|
|
|
วอนผู้รู้ช่วยหนูเกี่ยวกับ แอดจำนวนจากหน้ารับไปเพิ่มในคลังทำได้อย่างไรบ้างค่ะ ผู้รู้ช่วยแนะนำทีค่ะ พอดีทำโปรเจคจบ ขอบคุณมากค่ะ โปรเจคเกี่ยวกับคลังสินค้าค่ะ |
|
|
|
|
|
|
|
Code (PHP)
<?php
session_start(); ?>
<?php
include('includes/header.php');
include('includes/navbar.php');
?>
<?php
require('connect.php');
?>
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
<script type="text/javascript">
//การเรียกใช้ฟังก์ชัน name1 คือ ชื่อ
function name1() {
var i = document.getElementById("t_name").value //นำค่าจากการป้อนเข้ามาไว้ในตัวแปร i
if (!i.match(/^([A-Za-z ก-๙])+$/i)) { //สร้างเงื่อนไขสามารถกรอกข้อความได้แค่ตัวอักษรถ้ากรอกผิดขึ้นแจ้งเตือน
swal({
text: 'กรุณากรอกเป็นตัวอักษร',
icon: 'warning'
}); //แจ้งเตือนว่าใส่ข้อมูลผิด
return false;
}
}
function number1() {
var i = document.getElementById("t_number").value //นำค่าจากการป้อนเข้ามาไว้ในตัวแปร i
if (!i.match(/^([0-9])+$/i)) { //สร้างเงื่อนไขสามารถกรอกข้อความได้แค่ตัวอักษรถ้ากรอกผิดขึ้นแจ้งเตือน
swal({
text: 'กรุณากรอกเป็นตัวเลข',
icon: 'warning'
}); //แจ้งเตือนว่าใส่ข้อมูลผิด
return false;
}
}
function fncSubmit() {
if (document.getElementById('t_name').value == "") {
swal({
text: 'กรุณากรอกชื่อชิ้นส่วน',
icon: 'warning'
});
return false;
} else if (document.getElementById('t_number').value == "") {
swal({
text: 'กรุณากรอกจำนวน',
icon: 'warning'
});
return false;
} else if (document.getElementById('t_category').value == "1") {
swal({
text: 'กรุณาเลือกหน่วย',
icon: 'warning'
});
return false;
} else if (document.getElementById('c_id').value == "1") {
swal({
text: 'กรุณาเลือกประเภท',
icon: 'warning'
});
return false;
} else if (document.getElementById('namepic').value == "") {
swal({
text: 'กรุณาเลือกรูปภาพ',
icon: 'warning'
});
return false;
}
}
</script>
<body>
<!--ลบข้อมูล-->
<?php
if (isset($_GET['delete_id'])) { //เมื่อรับค่า delete_id มา
$deleteId = $_GET['delete_id'];
$sql = " DELETE
FROM getparts
WHERE g_id = '$deleteId' ";
mysqli_query($conn, $sql);
echo "<script>";
echo " window.location = 'getparts.php';";
echo "</script>";
mysqli_close($conn); //ปิดการเชื่อมต่อฐานข้อมูล
} //end if(isset($_GET['delete_id']))
//การกำหนดรหัส
$sql = "SELECT g_id
FROM getp
ORDER BY g_id
DESC LIMIT 1";
//คำสั่งกำหนดรหัสตามที่ต้องการและเพิ่มค่าทีละ 1
$result1 = mysqli_query($conn, $sql);
$g_id = "G" . str_pad((substr(mysqli_fetch_assoc($result1)["g_id"] ?? "G0000", 1)) + 1, 5, "0", STR_PAD_LEFT);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ข้อมูลรับชิ้นส่วน</title>
</head>
<body>
</body>
</html>
<div class="modal fade" id="modalBorrow_table">
<div class="modal-dialog modal-xl">
<div class="modal-content ">
<div class="modal-header">
<h4 class="modal-title" style="color:white">ชิ้นส่วน</h4> 
<h5><b><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-bookmark-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M6 1h6v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8V1z" />
<path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z" />
<path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z" />
</svg><i class="bi bi-journal-bookmark-fill"></i> รับชิ้นส่วน</b></h5><button type="button" class="close" data-dismiss="modal" aria-label="Close" id="close">
<span aria-hidden="true" style="color:white">×</span></button>
</div>
<div class="modal-body">
<input type="text" class="form-control per_unit" id="job_id_send" placeholder="กรุณากรอกข้อมูล" name='job_id_send' /hidden>
<div class="row">
<div class="col-sm-10">
<FONT Face="FC Home" SIZE="+1" COLOR="000000">
<form enctype="multipart/form-data" name="form1" id="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" onSubmit="JavaScript:return fncSubmit();">
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">รหัสรับชิ้นส่วน :</label>
<div class="col">
<input type="text" class="form-control" name="g_id" id="g_id" disabled="disabled" value="<?php echo $g_id; ?>">
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">ชื่อบริษัท :</label>
<div class="col">
<input type="text" class="form-control" name="supply" id="supply" placeholder="กรุณาใส่ชื่อบริษัท">
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">ชื่อชิ้นส่วน :</label>
<div class="col">
<select name="p_id" id="p_id" onclick="options()" required class="form-control" readonly>
<option value="1">--- กรุณาเลือกชื่อชิ้นส่วน ---</option><?php
$sql = "SELECT p_id,p_name FROM parts ";
$result = mysqli_query($conn, $sql);
while ($array = mysqli_fetch_assoc($result)) {
?>
<option value="<?= $array['p_id'] ?>"> <?= $array['p_name'] ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">จำนวน :</label>
<div class="col">
<input type="text" class="form-control" name="amout" id="amout" placeholder="กรุณาใส่จำนวน">
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">หน่วย :</label>
<div class="col">
<input type="text" class="form-control" name="unit" id="unit" placeholder="กรุณาใส่หน่วยนับ" readonly>
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">ชื่อพนักงาน :</label>
<div class="col">
<select name="emid" id="emid" onclick="options()" required class="form-control" readonly>
<option value="1">--- กรุณาเลือกชื่อพนักงาน ---</option><?php
$sql = "SELECT emid,em_name FROM employee ";
$result = mysqli_query($conn, $sql);
while ($array = mysqli_fetch_assoc($result)) {
?>
<option value="<?= $array['emid'] ?>"> <?= $array['em_name'] ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group row">
<label for="" class="col-sm-3 col-form-label text-right">วันที่บันทึก :</label>
<div class="col">
<tr>
<td>
<input type="text" id="date_g" name="date_g" class="form-control input-default" value="<?= date('d-m-Y') ?>" readonly>
</td>
</tr>
<tr>
</tr>
</div>
</div>
<div class="form-group">
<button type="button" class="btn btn-success" name="btn_add_borrow" id="btn_add_borrow">+เพิ่ม</button>
</div>
</div>
</div>
</div>
<div class="modal-footer ">
<div class="col-sm-12">
<table class="table table-striped table-bordered text-center" id="tb_borrow" width="100%">
<thead bgcolor="#2F4F4F">
<th style="color:white">ลำดับ</th>
<th style="color:white">รหัสรับชิ้นส่วน</th>
<th style="color:white">ชื่อชิ้นส่วน</th>
<th style="color:white">จำนวน</th>
<th style="color:white">หน่วย</th>
<th style="color:white">พนักงาน</th>
<th style="color:white">วันที่</th>
<th style="color:white"></th>
</thead>
</table>
</div>
</div>
<div class="modal-footer ">
<div class="form-group" align="right">
<button type="button" class="btn btn-success" name="nadd" id="nadd">++บันทึก</button>
</div>
<div class="form-group">
<button type="button" data-dismiss="modal" class="btn btn-danger" id="cancel">ยกเลิก</button>
</div>
</div>
<!-- Content Row -->
<?php
require('connect.php');
/* if (isset($_POST['nadd'])) {
$p_id = $_POST['p_id'];
$amout = $_POST['amout'];
$emid=$_POST['emid'];
var_dump($_FILES);
$sql = "SELECT g_id FROM getparts ORDER BY g_id DESC LIMIT 1";
$result = mysqli_query($conn, $sql);
$g_id = "G" . str_pad((substr(mysqli_fetch_assoc($result)["g_id"] ?? "G000", 1)) + 1, 3, "0", STR_PAD_LEFT);
$sql1 = "INSERT INTO getparts(g_id,p_id,amout,emid)
VALUES ('$g_id','$p_id','$amout','$emid')";
if (mysqli_query($conn, $sql1)) {
echo "<br/><br/>";
echo "บันทึกลงฐานข้อมูลเรียบร้อยแล้ว";
} else {
echo "เกิดข้อผิดพลาด : " . $sql . "<br>" . mysqli_error($conn);
}
} */
?>
<br>
</FONT>
</form>
</div>
<!--ปิด-->
</div>
</div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form1" id="myForm">
<!-- Begin Page Content -->
<div class="container-fluid">
<div class="container-fluid">
<!-- DataTales Example -->
<div class="card shadow mb-4">
<div class="card-header py-3">
<!-- หัว-->
<header class="w3-container" style="padding-top:22px">
<h5><b><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-bookmark-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M6 1h6v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8V1z" />
<path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z" />
<path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z" />
</svg><i class="bi bi-journal-bookmark-fill"></i> ตารางข้อมูลรับชิ้นส่วน</b></h5><br>
<div class="form-group row">
<button type="button" class="btn btn-success" name="nameBorrow" data-toggle="modal" data-target="#modalBorrow_table" id="idBorrow">เพิ่มข้อมูลรับชิ้นส่วน</button>
<button type="submit" class="btn btn-warning" name="open" id="open">ค้นหา</button>
<div class="col-sm-3"> <input type="text" class="form-control" name="txt_keyword" placeholder="ค้นหา"></div>
</div>
</div>
<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form1" id="form1" onSubmit="JavaScript:return fncSubmit();">
</form>
<?php
$search_text = isset($_POST['txt_keyword']) ? $_POST['txt_keyword'] : '';
$data = array();
$sql2 = "SELECT getpart_detail.g_id as g_id ,parts.p_name as p_id ,
employee.em_name as emid , getpart_detail.amount as amout ,
getpart_detail.supply as supply
FROM getp
inner join getpart_detail ON getp.g_id = getpart_detail.g_id
inner join parts ON getpart_detail.p_id = parts.p_id
inner join employee ON getpart_detail.emid = employee.emid
ORDER BY g_id ASC
";
if ($result = $conn->query($sql2)) {
//printf("Select returned %d rows.\n", $result->num_rows);
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
//print_r($row);echo '<br>';
$data[] = $row;
}
/* free result set */
}
$result = mysqli_query($conn, $sql2);
?><br><br>
<center>
<div class="col-sm-10">
<table class="table">
<thead class="thead-light">
<tr>
<th align="center">รหัสชิ้นส่วน</th>
<th align="center">ชื่อ</th>
<th align="center">จำนวน</th>
<th align="center">ชื่อพนักงาน</th>
<th align="center">แก้ไข</th>
<th align="center">ลบ</th>
</tr>
<tbody>
<tr>
<?php
// while ($row = mysqli_fetch_assoc($result1)){
foreach ($data as $row) { ?>
</center>
<th align="center"><?php echo $row['g_id']; ?></th>
<th align="center"><?php echo $row['p_id']; ?></th>
<th align="center"><?php echo $row['amout'] ?></th>
<th align="center"><?php echo $row['emid'] ?></th>
<!--แก้ไข-->
<th align="center"><a href="getpartsopen.php?update_id=<?php echo $row['g_id'] ?>">
<button class="btn btn-outline-success" type="button" name="btnUpdate">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-pencil-square" viewBox="0 0 16 16">
<path d="M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456l-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z" />
<path fill-rule="evenodd" d="M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5v11z" />
</svg>
<i class="bi bi-pencil-square"></i>แสดง</button></th>
<!--ลบ-->
<th align="center"><a href="tableedit.php?update_id=<?php echo $row['g_id'] ?>">
<button class="btn btn-outline-danger" type="button" name="btnUpdate">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-pencil-square" viewBox="0 0 16 16">
<path d="M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456l-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z" />
<path fill-rule="evenodd" d="M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5v11z" />
</svg>
<i class="bi bi-pencil-square"></i>แก้ไข</button></th>
</tr>
<?php
} ?>
</tbody>
</table>
</center>
<?php
//end if
?>
</div>
</center>
</header>
<!-- End page content -->
</div>
<?php
mysqli_close($conn);
?>
<?php
include('includes/scripts.php');
?>
<!-- เรียกไฟล์ Javascript path = home.js -->
<script type="text/javascript" src="getparts.js"> </script>
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- Popper JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.10.25/js/jquery.dataTables.js"></script>
</body>
</html>
Code (JavaScript)
// ตัวแปร Array
arr_p_id = [];
arr_emid = [];
//
$(document).on("change", "#p_id", function (event) {
var p_id = $("#p_id").val()
$.ajax({
url: "check_unit.php",
method: "POST",
data: {
p_id: p_id,
},
success: function (data) {
$("#unit").val(data)
}
});
});
$(document).ready(function () {
var table = $('#tb_borrow').DataTable({
retrieve: true,
paging: true,
"responsive": true,
"lengthChange": false,
"columnDefs": [
{ responsivePriority: 1, targets: 0 },
{ responsivePriority: 2, targets: 1 }
],
"language": {
"search": "ค้นหา:",
"info": "",
"zeroRecords": "ไม่มีรายการสินค้า",
"infoEmpty": "",
"paginate": {
"first": "หน้าแรก",
"last": "หน้าสุดท้าย",
"next": ">>>",
"previous": "<<<"
},
"lengthMenu": 'แสดง <select>' +
'<option value="5" >5</option>' +
'<option value="10">10</option>' +
'<option value="20">20</option>' +
'<option value="40">40</option>' +
'<option value="50">50</option>' +
'<option value="-1">ทั้งหมด</option>' +
'</select> รายการ',
"infoFiltered": "( คำที่ค้นหา TOTAL จาก MAX รายการ ) ",
},
})
$(document).on("click", "#btn_add_borrow", function (event) {
// ตัวแปร java ประกาศ ด้วย Var #g_id คือ id ช่อง input ใน php เห็น # นำหน้า คือ ID ของ php
var g_id = $('#g_id').val()
var p_id = $('#p_id').val()
//option:select หลัง id คือ ข้อมูล text ของ dropdown ไอดีนั้น
var p_id_txt = $("#p_id option:selected").text(); 3
var amout = $('#amout').val()
var unit = $('#unit').val()
var supply = $('supply').val()
var emid = $('#emid').val()
var emid_txt = $("#emid option:selected").text();
var number = "<span class='i'></span>";
var button = "<button id='re' data-i='' class='btn btn-danger btn-xs my-xs-btn re' type='button'><i class='fas fa-trash-alt'></i></button>"
var l1 = $('#tb_borrow td:nth-child(2)').map(function () {
return $(this).text();
}).get(); if ($.inArray(p_id, l1) >= 0) {
alert("เลือกซ้ำกรุณาเลือกใหม่");
}
else {
$.ajax({
url: "check_add.php",
method: "POST",
data: {
g_id: g_id,
p_id: p_id,
p_id_txt: p_id_txt,
amout: amout,
unit: unit,
emid: emid,
emid_txt: emid_txt,
supply : supply
},
success: function (data) {
console.log(data)
//เพิ่มข้อมูลในตัวแปร Array คำสั่ง push
arr_p_id.push(p_id);
arr_emid.push(emid);
console.log(arr_p_id)
console.log(arr_emid)
table.row.add([
number,
g_id,
p_id_txt,
amout,
unit,
emid_txt,
supply,
button
]).draw(false);
$(".i").each(function (i) {
$(this).text(++i);
});
$(".re").each(function (i) {
$(this).attr("data-i", ++i);
});
$("#p_id option[value='1']").prop('selected', true);
$("#emid option[value='1']").prop('selected', true);
$('#amout').val("")
$('#unit').val("")
}
})
}
})
//ฟังชั่น ลบข้อมูล ใน Array
$(document).on("click", ".re", function (event) {
var index = $(this).attr("data-i");
table
.row($(this).parents('tr'))
.remove()
.draw();
index = index - 1;
delete arr_p_id[index];
delete arr_emid[index];
arr_p_id = arr_p_id.filter(function (el) {
return el != "empty";
});
arr_emid = arr_emid.filter(function (el) {
return el != "empty";
});
$(".i").each(function (i) {
$(this).text(++i);
});
$(".re").each(function (i) {
$(this).attr("data-i", ++i);
});
});
$(document).on("click", "#nadd", function (event) {
var g_id = $('#g_id').val()
var l1 = $('#tb_borrow td:nth-child(4)').map(function () {
return $(this).text();
}).get();
var l2 = $('#tb_borrow td:nth-child(5)').map(function () {
return $(this).text();
}).get();
if (l1 == "") {
alert("เลือกรายการ");
} else {
console.log(l2);
$.ajax({
url: "add_part.php",
method: "POST",
data: {
g_id:g_id,
l1: l1,
l2: l2,
arr_emid: arr_emid,
arr_p_id,arr_p_id
},
success: function (data) {
console.log(data)
alert("รับเรียบร้อย");
setTimeout(function () {
location.reload();
}, 2000);
}
});
}
});
});
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2021-08-26 19:53:25 |
By :
kawisara |
View :
572 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วปัญหาคืออะไรครับ เพราะคำถามที่ถามมา มันตอบได้เยอะมาก
ถ้าเป็นผม หลังกดรับสินค้า ถ้า สำเร็จ ก็จะเอา ข้อมูล product ไปบวกเพิ่มใน stock ครับ และต้องมี logs การรับของเก็บไว้ด้วย ว่ารับจากไหน ใครรับ รับกี่ชิ้น วันเดือนปีเวลา
|
|
|
|
|
Date :
2021-08-27 11:16:42 |
By :
mongkon.k |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|