테스트 사이트 - 개발 중인 베타 버전입니다

외부쇼핑몰에서 포인트를 전송받는 페이지

네온 1년 전 조회 11,420

A라는 외부쇼핑몰에서 제가 만든 B라는 그누보드 사이트에 포인트를 전송하는 기능을 준비하고 있는데요,
저희 B사이트에 회원정보 확인 및 포인트를 받을 수 있는 페이지를 준비해서 URL을 달라고합니다. 어떤식으로 준비해서 제공하면 되는거죠?
A사이트에서 POST 방식으로 회원아이디와 포인트값을 보내면 B사이트에서 그것을 확인하고 해당 회원에게 포인트를 넣어주면 되는 흐름 같은데 어떻게하면 되는지 좀 막연합니다. 이런식의 API 제공예시가 있을까요 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

1년 전

전달되는 회원 아이디, 포인트에 대한 상세 설명이 없으니 변수명을 mb_id, mb_point로 함

 

1. root에 shop_point.php 화일 생성

2. 내용

<?php

include_once("_common.php");

$member_table= $g5['member_table'];

if( !isset($mb_id) || !isset($mb_point) || $mb_point<0 ) die('error');

$row= sql_fetch("select mb_id from $member_table where mb_id='$mb_id' ");

if(!$row['mb_id']) die('error');

 insert_point($mb_id, $mb_point, "shop point", G5_TIME_YMDHIS, '외부shop');

die('OK');

 

http://도메인/shop_point.php 전달

변수명은 mb_id, mb_point 로 해달라고 전달

 

 

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전

간단하게는 다음처럼 구성하는 방법이 있습니다.

</p>

<p><?php</p>

<p>/**</p>

<p> *</p>

<p> * file : ${DOCUMENT_ROOT}/api/member/index.php</p>

<p> * uri : yourdomain.tld/api/member/</p>

<p> * params-get : mb_id</p>

<p> * params-post : mb_id, mb_point</p>

<p> */</p>

<p> </p>

<p>$doc_root = dirname(dirname(__DIR__));

require $doc_root . DIRECTORY_SEPARATOR . 'common.php';</p>

<p> </p>

<p>header('Content-Type: application/json; charset=utf-8');</p>

<p> </p>

<p>$req_method = $_SERVER['REQUEST_METHOD'];

$err = null;

$res = [];</p>

<p> </p>

<p>if ($req_method == 'GET') {

    $mb_id = isset($_GET['mb_id']) == true ? sql_escape_string($_GET['mb_id']) : null;</p>

<p>

    if (empty($mb_id) == false) {

        $res = get_member($mb_id, 'mb_id, mb_name, mb_level, mb_point');

    }</p>

<p> </p>

<p>    if (empty($res['mb_id']) == true) {

        $err = true;

    }

} else if ($req_method == 'POST') {

    $mb_id = isset($_POST['mb_id']) == true ? sql_escape_string($_POST['mb_id']) : null;

    $mb_point = isset($_POST['mb_point']) == true ? (int)$_POST['mb_point'] : 0;

    $result = 0;</p>

<p> </p>

<p>    $mbinfo = get_member($mb_id);</p>

<p>

    if (empty($mbinfo['mb_id']) == false) {

        $result = insert_point($mb_id, $mb_point, 'from external shop');

    }</p>

<p> </p>

<p>    if ($result == 1) {

        $res = ['code' => 0, 'message' => 'SUCCESS'];

    } else {

        $err = true;

    }

}</p>

<p> </p>

<p>if ($err == true) {

    $res = ['code' => 456, 'message' => 'FAILURE'];

}

echo json_encode($res);

?></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전

받아서 처리할 파일을 만드셔서 드리면 됩니다. 변수명도 지정해서요

저희 게시판 글쓰기 하면 write_update.php 로 넘어가잖아요 action이

그런 의미라고 보시면 됩니다.

 

예를들어 post_update.php를 만들고

$point = isset($_POST['point']) ? $_POST['point'] : '';

 

이런식의 데이터를 받아다가

db에 저장을 하시는 작업을 할 페이지 url을 달라고 하는겁니다~

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인