회원가입 API 채택완료
회원가입을 외부에서 xml코드로 가입을 시키려고 합니다. 파라미터 값은 reg이고 register.php 파일로 읽어드립니다.
{hostname}/api/users/register?reg=
API를 통해서 POST 방식으로 최소 정보로 임의 가입 형태를 구현하고, 향후 구현 뒤에 직접 로그인해서 나머지 값들을 업데이트 하는 방식입니다.
다만 다음과 같이 데이터를 받았는데, 그누보드의 처음화면으로 강제로 넘어가는 것 같습니다.
혹시 어느 부분을 수정해야할까요?
<?php
include_once("../../common.php");
if(!in_array('application/x-www-form-urlencoded',explode(';',$_SERVER['CONTENT_TYPE']))){
echo json_encode(array('result_code' => '400'));
exit;
}
$arr = $_POST ? $_POST : $_GET;
foreach($arr as $key => $value) {
${$key} = $value;
}
$data = json_decode(stripslashes($_POST['reg']), true);
// stripslashes 는 \ 제거 필요시 사용
$mb_id = $data['mb_id'];
$mb_password = get_encrypt_string($data['mb_password']);
$mb_name = $data['mb_name'];
$mb_hp = $data['mb_hp'];
$mb_email = $data['mb_email'];
$mb_1 = $data['mb_1'];
$mb_level = '2';
$mb_datetime = '".G5_TIME_YMDHIS."';
$mb_3 = 'postReguser';
$user_add = "INSERT INTO g5_member
(
mb_id,
mb_password,
mb_name,
mb_hp,
mb_email,
mb_1,
mb_level,
mb_datetime,
mb_3
)
VALUES
(
$mb_id,
$mb_password,
$mb_name,
$mb_hp,
$mb_email,
$mb_1,
$mb_level,
$mb_datetime,
$mb_3
)
";
$insert_d_success = sql_query($user_add);
$user_account = sql_insert_id();
?>
답변 4개
답변에 대한 댓글 5개
/home/project/localhost/api/users/
/home/project/localhost/api/
/home/project/localhost/
/home/project/
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
다만 다음과 같이 데이터를 받았는데, 그누보드의 처음화면으로 강제로 넘어가는 것 같습니다.
==
브라우저에서
{hostname}/api/users/register?reg=
직접 열어 보신 건가요?
API로 하는 경우 페이지 이동하는 부분이 없을 텐데요.
답변에 대한 댓글 4개
하나 만들어서 던졌습니다.
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 5개
insert 쿼리 만드실때
values ( $mb_id , ~~~
이게
values ( '$mb_id', ~~
이렇게 되지않아서 오류나는건가 해서요
더 알아보기 쉽게 표현하면
values ( '{$mb_id}', ~~~
*따옴표차이
exit;
이렇게 해서 sql 에러 메시지가 있는지 확인해 보세요.
[03-Feb-2022 14:22:41 Asia/Seoul] PHP Warning: include_once(): Failed opening './_common.php' for inclusion (include_path='.:/opt/alt/php72/usr/share/pear') in /home/project/localhost:8000/bbs/alert.php on line 5
[03-Feb-2022 14:22:41 Asia/Seoul] PHP Warning: Use of undefined constant G5_JS_VER - assumed 'G5_JS_VER' (this will throw an Error in a future version of PHP) in /home/project/localhost:8000/theme/adminlte2.4.5/head.sub.php on line 87
[03-Feb-2022 14:22:41 Asia/Seoul] PHP Fatal error: Uncaught Error: Call to a member function run() on null in /home/project/localhost:8000/lib/common.lib.php:2499
Stack trace:
#0 /home/project/localhost:8000/theme/adminlte2.4.5/tail.sub.php(63): html_end()
#1 /home/project/localhost:8000/tail.sub.php(5): require_once('/home/project/...')
#2 /home/project/localhost:8000/bbs/alert.php(116): include_once('/home/project/...')
#3 /home/project/localhost:8000/lib/common.lib.php(179): include_once('/home/project/...')
#4 /home/project/localhost:8000/extend/signup_no.php(5): alert('\xEA\xB4\x80\xEB\xA6\xAC\xEC\x9E\x90\xEA\xB0\x80 \xEB\x93...', 'https://localho...')
#5 /home/project/localhost:8000/common.php(788): include_once('/home/project/...')
#6 /home/project/localhost:8000/api/users/register.php(2): include_once('/home/project/...')
#7 {main}
thrown in /home/project/localhost:8000/lib/common.lib.php on line 2499
생성된 error log에는 다음과 같은데, 보니까 common.php를 못 읽는 것 같은데, 위 root폴더 api폴더 users폴더 내 register.php가 있어서 ../../common.php <--요게 맞는 것 같은데.. 왜 못읽는지는 모르겠습니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
../../
둘다 테스트 해봤지만.. include once가 안됩니다. ㅠ
[04-Feb-2022 05:02:08 UTC] PHP Warning: include_once(../../../common.php): failed to open stream: No such file or directory in /home/project/localhost/api/users/register.php on line 2
[04-Feb-2022 05:02:08 UTC] PHP Warning: include_once(): Failed opening '../../../common.php' for inclusion (include_path='.:/opt/alt/php72/usr/share/pear') in /home/project/localhost/api/users/register.php on line 2
[04-Feb-2022 05:02:08 UTC] PHP Notice: Undefined index: CONTENT_TYPE in /home/project/localhost/api/users/register.php on line 9
[04-Feb-2022 05:04:09 UTC] PHP Warning: include_once(../../../common.php): failed to open stream: No such file or directory in /home/project/localhost/api/users/register.php on line 2
[04-Feb-2022 05:04:09 UTC] PHP Warning: include_once(): Failed opening '../../../common.php' for inclusion (include_path='.:/opt/alt/php72/usr/share/pear') in /home/project/localhost/api/users/register.php on line 2
[04-Feb-2022 05:04:09 UTC] PHP Notice: Undefined index: CONTENT_TYPE in /home/project/localhost/api/users/register.php on line 9