PHP 및 Vue를 사용한 개발: 멤버십 포인트를 전송하고 받는 방법
소개:
많은 웹사이트와 애플리케이션에서 멤버십 포인트는 사용자 충성도와 참여에 대한 보상으로 사용되는 경우가 많습니다. 플랫폼에 대한 사용자 참여를 높이기 위해 사람들은 때때로 회원 포인트의 양도 및 수령 기능을 구현해야 합니다. 이 기사에서는 PHP 및 Vue 개발을 사용하여 멤버 포인트의 전송 및 수신 기능을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.
1부: 기술 요구 사항 및 준비
개발을 시작하기 전에 다음 사항을 확인해야 합니다.
2부: 데이터베이스 설계 및 생성
코드 작성을 시작하기 전에 데이터베이스를 설계하고 해당 테이블 구조를 생성해야 합니다. 회원 포인트 양도 및 수신 기능을 위해서는 다음과 같은 두 개의 테이블을 생성해야 합니다.
다음 SQL 문을 사용하여 이러한 두 테이블을 만들 수 있습니다.
--구성원 테이블 만들기
CREATE TABLE 구성원 (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);
--포인트 테이블 생성
CREATE TABLE 포인트 (
id INT(11) NOT NULL AUTO_INCREMENT,
member_id INT(11) NOT NULL,
amount INT(11) NOT NULL,
PRIMARY KEY ( id),
FOREIGN KEY (member_id) REFERENCESmembers(id)
);
3부: PHP 백엔드 구현
PHP 백엔드 구현 측면에서 멤버 포인트의 전송 및 수신 기능을 처리하기 위한 인터페이스를 작성해야 합니다. 다음은 PHP 코드의 예입니다:
//데이터베이스에 연결
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = " your_dbname" ;
$conn = new mysqli($servername, $username, $password, $dbname);
// 포인트 이전 요청 처리
if ($_SERVER['REQUEST_METHOD'] === 'POST' && $ _POST[ 'action'] === '이체') {
$sender = $_POST['sender'];
$receiver = $_POST['receiver'];
$amount = $_POST['amount'];
// 보낸 사람의 포인트가 충분한지 확인
$check_sender_points = "SELECT amount FROM points WHERE member_id = $sender";
$sender_points_result = $conn->query($check_sender_points);
$sender_points = $sender_points_result-> ; fetch_assoc()['amount'];
if ($sender_points
echo json_encode(['success' => false, 'message' => '您的账户积分不足']); exit;
}
// 포인트 이전
$transfer_points = "UPDATE 포인트 SET 금액 = 금액 - $amount WHERE member_id = $ sender ";
$conn->query($transfer_points);
$receive_points = "UPDATE 포인트 SET 금액 = 금액 + $amount WHERE member_id = $receiver";
$conn->query($receive_points);
echo json_encode(['success' => true, 'message' => '포인트 전송 성공']);
}
// 포인트 쿼리 요청 처리
if ($_SERVER['REQUEST_METHOD'] === ' GET' && $_GET['action'] === 'getPoints') {
$member_id = $_GET['member_id'];
// 포인트 금액 쿼리
$get_points = "WHERE에서 포인트 금액 선택 member_id = $ member_id";
$points_result = $conn->query($get_points);
$points = $points_result->fetch_assoc()['amount'];
echo json_encode(['points' => ; $points ]);
}
$conn->close();
?>
4부: Vue 프런트엔드 구현
Vue 프런트엔드 구현 측면에서 처리할 구성 요소를 작성해야 합니다. 회원포인트의 양도 및 수령 기능을 제공합니다. 다음은 Vue 구성 요소의 예입니다.
<div>
发送者ID:<input type="text" v-model="sender">
</div>
<div>
接收者ID:<input type="text" v-model="receiver">
</div>
<div>
积分数额:<input type="number" v-model="amount">
</div>
<div>
<button @click="transferPoints">转让积分</button>
</div>
<div>
<button @click="getPoints">查询积分</button>
</div>
<div v-if="points !== null">
当前积分数额:{{ points }}
</div>