정품인증 방법있을까요?
본문
수공예품에 바코드를 각인하여 판매하고 있습니다.
구매자가 저희 홈페이지에 접속해서
바코드에 있는 번호를 바코드 입력란에서 조회하면
해당 홈페이지에서 판매한 제품이 맞다는 내용을 뜨게하고싶습니다.
어떻게하면 가능할까요?
고수님들 부탁드립니다.
답변 3
참조 샘플입니다.
1) DB 테이블
CREATE TABLE `g5_barcode_products` (
`bp_id` int(11) NOT NULL AUTO_INCREMENT,
`bp_barcode` varchar(50) NOT NULL COMMENT '바코드 번호',
`bp_product_name` varchar(200) NOT NULL COMMENT '제품명',
`bp_datetime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '등록일시',
PRIMARY KEY (`bp_id`),
UNIQUE KEY `bp_barcode` (`bp_barcode`),
KEY `bp_datetime` (`bp_datetime`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='바코드 제품 관리';
2) 고객용 바코드 조회 페이지 샘플 /page/barcode_check.php
<?php
include_once '../common.php';
$g5['title'] = '제품 진품 확인';
include_once G5_PATH.'/head.php';
$barcode = '';
$result_msg = '';
$product_name = '';
// 폼 처리
if (isset($_POST['barcode']) && $_POST['barcode']) {
$barcode = clean_xss_tags($_POST['barcode']);
// 바코드 조회
$sql = "SELECT bp_product_name FROM g5_barcode_products WHERE bp_barcode = '".sql_real_escape_string($barcode)."'";
$row = sql_fetch($sql);
if ($row) {
$result_msg = 'success';
$product_name = $row['bp_product_name'];
} else {
$result_msg = 'fail';
}
}
?>
<div id="barcode_check_wrap">
<h2>제품 진품 확인</h2>
<form method="post" action="">
<p>
<label for="barcode">바코드 번호</label><br>
<input type="text" name="barcode" id="barcode" value="<?php echo htmlspecialchars($barcode); ?>" placeholder="바코드 번호를 입력하세요" required>
</p>
<p>
<input type="submit" value="확인하기">
</p>
</form>
<?php if ($result_msg == 'success') { ?>
<div class="result_box success">
<h3>✓ 정품 확인</h3>
<p><strong>제품명:</strong> <?php echo htmlspecialchars($product_name); ?></p>
<p>이 제품은 저희 홈페이지에서 판매한 정품입니다.</p>
</div>
<?php } elseif ($result_msg == 'fail') { ?>
<div class="result_box fail">
<h3>✗ 확인 불가</h3>
<p>입력하신 바코드로 등록된 제품을 찾을 수 없습니다.</p>
</div>
<?php } ?>
</div>
<style>
#barcode_check_wrap {
max-width: 500px;
margin: 50px auto;
padding: 20px;
border: 1px solid #ddd;
}
#barcode_check_wrap h2 {
text-align: center;
margin-bottom: 30px;
}
#barcode_check_wrap input[type="text"] {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
margin-top: 5px;
}
#barcode_check_wrap input[type="submit"] {
background: #007cba;
color: white;
padding: 10px 20px;
border: none;
cursor: pointer;
}
.result_box {
margin-top: 20px;
padding: 15px;
border-radius: 5px;
text-align: center;
}
.result_box.success {
background: #d4edda;
border: 1px solid #c3e6cb;
color: #155724;
}
.result_box.fail {
background: #f8d7da;
border: 1px solid #f5c6cb;
color: #721c24;
}
</style>
<?php include_once G5_PATH.'/tail.php'; ?>
3) 관리자용 바코드 등록 페이지 /adm/barcode_register.php
<?php
$sub_menu = "200900";
include_once('./_common.php');
auth_check($auth[$sub_menu], 'w');
$g5['title'] = '바코드 등록';
include_once('./admin.head.php');
// 등록 처리
if (isset($_POST['act']) && $_POST['act'] == 'add') {
$barcode = clean_xss_tags($_POST['barcode']);
$product_name = clean_xss_tags($_POST['product_name']);
if (!$barcode) {
alert('바코드를 입력해주세요.');
}
if (!$product_name) {
alert('제품명을 입력해주세요.');
}
// 중복 확인
$check_sql = "SELECT COUNT(*) as cnt FROM g5_barcode_products WHERE bp_barcode = '".sql_real_escape_string($barcode)."'";
$check_result = sql_fetch($check_sql);
if ($check_result['cnt'] > 0) {
alert('이미 등록된 바코드입니다.');
}
// 등록
$sql = "INSERT INTO g5_barcode_products
SET bp_barcode = '".sql_real_escape_string($barcode)."',
bp_product_name = '".sql_real_escape_string($product_name)."',
bp_datetime = NOW()";
sql_query($sql);
alert('바코드가 등록되었습니다.');
}
?>
<div class="local_desc01 local_desc">
<p>제품에 부착할 바코드 정보를 등록합니다.</p>
</div>
<form name="fregister" method="post" action="">
<input type="hidden" name="act" value="add">
<div class="tbl_frm01 tbl_wrap">
<table>
<colgroup>
<col class="grid_4">
<col>
</colgroup>
<tbody>
<tr>
<th scope="row"><label for="barcode">바코드 번호<strong class="sound_only">필수</strong></label></th>
<td><input type="text" name="barcode" id="barcode" required class="frm_input required" maxlength="50"></td>
</tr>
<tr>
<th scope="row"><label for="product_name">제품명<strong class="sound_only">필수</strong></label></th>
<td><input type="text" name="product_name" id="product_name" required class="frm_input required" maxlength="200"></td>
</tr>
</tbody>
</table>
</div>
<div class="btn_confirm01 btn_confirm">
<input type="submit" value="등록" class="btn_submit" accesskey="s">
<a href="<?php echo G5_URL; ?>/barcode_check.php" target="_blank" class="btn btn_02">조회페이지 보기</a>
</div>
</form>
<script>
document.getElementById('barcode').focus();
</script>
<?php
include_once('./admin.tail.php');
?>
1. 바코드 DB 를 mysql DB 에 저장
2. 특정 페이지에 바코드 조회 페이지 작업
3. 구매자가 바코드 DB 를 입력 후 맞으면 맞다고 출력을 해줘야 하는데
개발에 대한 기본 지식이 없으시면 작업하기 힘드실겁니다.
개발지식이 없으실 경우 제작의뢰에 5~10만원선으로 작업의뢰 올리셔야 할듯합니다.
1. 판매하는 상품 바코드 값을 서버에 등록(모든 상품을 대상으로 하거나 판매가 되면 등록하거니)
2. 상품의 바코드를 읽어서 값을 서버와 비교하는 프로그램 작업
---홈페이지의 바코드 스캔 페이지에 접속하여 폰의 카메라로 바코드를 읽도록 함
---서버에 저장하는 바코드 값은 상품을 직접 스캔 하여 등록하거나 바코드 생성시 등록
----값을 직접 입력하는 것은 입력오류도 많거니와 사용이 불편 함
답변을 작성하시기 전에 로그인 해주세요.