답변 3개
참조 샘플입니다.
1) DB 테이블
</p>
<p>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='바코드 제품 관리';</p>
<p>
2) 고객용 바코드 조회 페이지 샘플 /page/barcode_check.php
</p>
<p><?php
include_once '../common.php';</p>
<p>$g5['title'] = '제품 진품 확인';
include_once G5_PATH.'/head.php';</p>
<p>$barcode = '';
$result_msg = '';
$product_name = '';</p>
<p>// 폼 처리
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';
}
}
?></p>
<p><div id="barcode_check_wrap">
<h2>제품 진품 확인</h2>
<form method="post" action="">
<p>
<label for="barcode">바코드 번호</label>
<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></p>
<p><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></p>
<p><?php include_once G5_PATH.'/tail.php'; ?></p>
<p>
3) 관리자용 바코드 등록 페이지 /adm/barcode_register.php
</p>
<p><?php
$sub_menu = "200900";
include_once('./_common.php');</p>
<p>auth_check($auth[$sub_menu], 'w');</p>
<p>$g5['title'] = '바코드 등록';
include_once('./admin.head.php');</p>
<p>// 등록 처리
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('바코드가 등록되었습니다.');
}
?></p>
<p><div class="local_desc01 local_desc">
<p>제품에 부착할 바코드 정보를 등록합니다.</p>
</div></p>
<p><form name="fregister" method="post" action="">
<input type="hidden" name="act" value="add"></p>
<p><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></p>
<p><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></p>
<p></form></p>
<p><script>
document.getElementById('barcode').focus();
</script></p>
<p><?php
include_once('./admin.tail.php');
?></p>
<p>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
1. 판매하는 상품 바코드 값을 서버에 등록(모든 상품을 대상으로 하거나 판매가 되면 등록하거니)
2. 상품의 바코드를 읽어서 값을 서버와 비교하는 프로그램 작업
---홈페이지의 바코드 스캔 페이지에 접속하여 폰의 카메라로 바코드를 읽도록 함
---서버에 저장하는 바코드 값은 상품을 직접 스캔 하여 등록하거나 바코드 생성시 등록
----값을 직접 입력하는 것은 입력오류도 많거니와 사용이 불편 함
답변에 대한 댓글 2개
https://github.com/zxing-js/library
댓글을 작성하려면 로그인이 필요합니다.
1. 바코드 DB 를 mysql DB 에 저장
2. 특정 페이지에 바코드 조회 페이지 작업
3. 구매자가 바코드 DB 를 입력 후 맞으면 맞다고 출력을 해줘야 하는데
개발에 대한 기본 지식이 없으시면 작업하기 힘드실겁니다.
개발지식이 없으실 경우 제작의뢰에 5~10만원선으로 작업의뢰 올리셔야 할듯합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인