|
![](/images/resource/spacer.gif) |
|
มีวิธีเขียนโปรแกรมอย่างไรบ้าง ที่จะ Update ราคาทั้งกลุ่มสินค้า โดยการป้อนจำนวนเงินต่อ กก. เพียงค่าเดียว ใน PHP Mysql ค่ะ |
|
![](/images/resource/viewboard_01.gif?v=1001) |
|
|
![](/images/resource/viewboard_03.gif?v=1001) |
![](/images/resource/viewboard_04.gif?v=1001) |
|
เนื่องจากราคาโลหะ เปลี่ยนแปลงตลอดเวลา ตามปัจจัยของตลาดโลก และสินค้ามีจำนวนหลายพันรายการ ดังนั้นการจะเปลี่ยนแต่ละตัว ใช้เวลามาก หากเราเปลี่ยนทั้งกลุ่ม โดยกรอกจำนวนเงินต่อ กก. แล้วนำไปคูณน้ำหนักสินค้า ในกลุ่มสินค้าเดียวกัน และกด Update ทำอย่างไรค่ะ
Code ที่เขียนได้ จะทำการ Update ครั้งละ 1 รายการค่ะ
Code (PHP)
<?php include('header.php'); ?>
<!-- เนื้อหา -->
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1>Change prices as category</h1>
</section>
<!-- Main content -->
<section class="content">
<form class="form-horizontal" method="post" >
<div class="box-body">
<script>
function findproduct_current(str)
{
if (str.length == 0) {
document.getElementById("pro_qty").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("pro_qty").value = xmlhttp.responseText;
var qty= xmlhttp.responseText;
}
}
xmlhttp.open("GET", "find_product.php?id="+str, true);
xmlhttp.send();
findprono(str);
}
}
function findprono(str)
{
if (str.length == 0) {
document.getElementById("pro_no").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("pro_no").value = xmlhttp.responseText;
var qty= xmlhttp.responseText;
}
}
xmlhttp.open("GET", "find_prono5.php?id="+str, true);
xmlhttp.send();
findunit(str);
}
}
function findunit(str)
{
if (str.length == 0) {
document.getElementById("quotation_unit").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("quotation_unit").value = xmlhttp.responseText;
var qty= xmlhttp.responseText;
}
}
xmlhttp.open("GET", "find_unit.php?id="+str, true);
xmlhttp.send();
findprice(str);
}
}
function findprice(str)
{
if (str.length == 0) {
document.getElementById("pro_sell").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("pro_sell").value = xmlhttp.responseText;
var qty= xmlhttp.responseText;
}
}
xmlhttp.open("GET", "find_productprice.php?id="+str, true);
xmlhttp.send();
findmember(str);
}
}
function caltotal()
{
var pro_sell;
pro_sell=document.getElementById("pro_sell").value;
tot2=pro_sell*1;
}
</script>
<?php
$sqlw=" select distinct(adjust_no) from tb_pricechange";
$sqlw.=" where";
$sqlw.=" adjust_status='ยืนยันการปรับราคา'";
$numw=$cls_con->select_numrows($sqlw);
if($numw==0)
{
$adjust_no="PRICE-1";
}
else
{
$numw=$numw+1;
$adjust_no="PRICE-".$numw;
}
?>
<div class="form-group">Items
<label for="adjust_no" class="col-sm-2 control-label"></label>
<div class="col-sm-10">
<input readonly="text" class="form-control" name="adjust_no" value="<?=$adjust_no;?>"
id="adjust_no" placeholder="">
</div>
</div>
<script>
function filter() {
var keyword = document.getElementById("pro_name").value;
var select = document.getElementById("pro_id");
for (var i = 0; i < select.length; i++) {
var txt = select.options[i].text;
if (txt.substring(0, keyword.length).toLowerCase() !== keyword.toLowerCase() && keyword.trim() !== "") {
select.options[i].style.display = 'none';
} else {
select.options[i].style.display = 'list-item';
}
}
}
</script>
<div class="form-group">Strength
<div class="col-sm-8">
<select name="pro_id" id="pro_id" class="form-control" onchange="findproduct_current(this.value)">
<option value="">
--Select--
</option>
<?php
$sqld=" select * from tb_product_change_price";
if(isset($_GET['pro_id']))
{
$pro_id=$_GET['pro_id'];
$sqld.=" where";
$sqld.=" pro_id='$pro_id'";
}
$resultd=$cls_con->select_base($sqld);
while($rowd=mysqli_fetch_array($resultd))
{
$pro_id=$rowd['pro_id'];
$pro_name=$rowd['pro_name'];
$pro_no=$rowd['pro_no'];
?>
<option value="<?=$pro_id;?>">
<?=$pro_name;?>
</option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">Code
<label for="pro_no" class="col-sm-2 control-label"></label>
<div class="col-sm-10">
<input readonly="readonly" class="form-control" name="pro_no" id="pro_no" placeholder="">
</div>
</div>
<div class="form-group">Prices
<label for="pro_sell" class="col-sm-2 control-label"></label>
<div class="col-sm-10">
<input readonly="readonly" class="form-control" name="pro_sell" id="pro_sell" placeholder="ราคาปัจจุบัน">
</div>
</div>
<div class="form-group">New Prices
<label for="adjust_qty" class="col-sm-2 control-label">่ *</label>
<div class="col-sm-10">
<input class="form-control" name="adjust_qty" required="required" type="text" value="<?php echo @$_POST['adjust_qty'] ?>">
</div>
</div>
</div>
<!-- /.box-body -->
<center>
<button type="submit" name="submit" class="btn btn-info">ยืนยันปรับราคา</button>
<input name="reset" type="reset" id="reset" value="ยกเลิก" onClick="window.location.href=
'show_product.php';" class="btn btn-warning">
</center>
</form>
<?php
if(isset($_POST['submit']))
{
$adjust_no=$_POST['adjust_no'];
$pro_id=$_POST['pro_id'];
$pro_qtycurrent=$_POST['pro_qtycurrent'];
$pro_no=$_POST['pro_no'];
$adjust_qty=$_POST['adjust_qty'];
$adjust_becuase=$_POST['adjust_becuase'];
$adjust_note=$_POST['adjust_note'];
$adjust_status='รออนุมัติ';
$employee_id=$_POST['employee_id'];
$sql=" insert into tb_pricechange (adjust_no,pro_id,pro_qtycurrent,pro_no,adjust_qty,adjust_becuase,
adjust_note,adjust_status,employee_id,adjust_date)";
$sql.=" values ('$adjust_no','$pro_id','$pro_qtycurrent','$pro_no','$adjust_qty','$adjust_becuase','
$adjust_note','$adjust_status','$employee_id',now())";
if($cls_con->write_base($sql)==true){
echo $cls_con->show_message('บันทึกข้อมูลสำเร็จ');
echo "<meta http-equiv='refresh' content='2 ;url=insert_pricechange.php'>" ;
}
else{
echo $cls_con->show_message('บันทึกข้อมูลไม่สำเร็จ');
}
}
?>
<br/>
<?php
$sqlg=" select * from pricechange_vw4";
$sqlg.=" where adjust_status='รออนุมัติ'";
$numg=$cls_con->select_numrows($sqlg);
if($numg>=1)
{
?>
<form method="post">
<div class="CSSTableGenerator" >
<table >
<tr>
<td>Items</td>
<td>No.</td>
<td>Code</td>
<td>Prices</td>
<td>New Prices</td>
<td>Status</td>
</tr>
<?php
$result=$cls_con->select_base($sqlg);
while($row =mysqli_fetch_array($result))
{
?>
<tr>
<td><?=$row['adjust_id'];?></td>
<td><?=$row['adjust_no'];?></td>
<td><?=$row['pro_no'];?></td>
<td><?=$row['pro_sell'];?></td>
<td><?=$row['adjust_qty'];?></td>
<td><?=$row['adjust_status'];?></td>
</tr>
<?php } ?>
</table>
</div>
<hr/>
<center>
<button type="submit" name="confirm" class="btn btn-info">อนุมัติการปรับราคา</button>
<br/>
<br/>
</center>
</form>
<?php
}
?>
<?php
if(isset($_POST['confirm']))
{
$sqlc=" select * from tb_pricechange";
$sqlc.=" where";
$sqlc.=" adjust_no='$adjust_no'";
$sqlc.=" and";
$sqlc.=" adjust_status='รออนุมัติ'";
$resultc=$cls_con->select_base($sqlc);
while($rowc=mysqli_fetch_array($resultc))
{
$pro_idc=$rowc['pro_id'];
$adjust_qty=$rowc['adjust_qty'];
$remain=find_remainqty($pro_idc);
$new_qty=$remain-$adjust_qty;
update_qty($pro_idc,$new_qty);
}
$sqli=" update tb_pricechange";
$sqli.=" set";
$sqli.=" adjust_status='ยืนยันการปรับราคา'";
$sqli.=" where";
$sqli.=" adjust_no='$adjust_no'";
$sqli.=" and";
$sqli.=" adjust_status='รออนุมัติ'";
if($cls_con->write_base($sqli)==true){
echo $cls_con->show_message('ยืนยันการปรับราคาสำเร็จ');
echo $cls_con->goto_page(1,'show_take.php');
}
else{
echo $cls_con->show_message('ยืนยันการปรับราคาไม่สำเร็จ');
}
}
?>
</section>
<!-- /.content -->
</div>
<!-- เนื้อหา -->
<?php include('footer.php'); ?>
<?php
function find_remainqty($pro_id)
{
$cls_con=new class_conn;
$sql=" select * from tb_product_change_price";
$sql.=" where";
$sql.=" pro_id='$pro_id'";
$result=$cls_con->select_base($sql);
while($row=mysqli_fetch_array($result))
{
$pro_sell=$row['pro_sell'];
}
return $pro_sell;
}
function update_qty($pro_id,$new_qty)
{
$cls_con=new class_conn;
$sql=" update tb_product_change_price";
$sql.=" set";
$sql.=" pro_sell='$new_qty'";
$sql.=" where";
$sql.=" pro_id='$pro_id'";
$cls_con->write_base($sql);
echo $sql;
}
?>
![womg12457 womg12457](https://www.thaicreate.com/upload/stock/20220324174839.jpg?v=1001)
Tag : PHP, MySQL
![](/images/adv.jpg?v=1001)
|
|
![](/images/resource/blockviewtopic_01.gif?v=1001) |
![](/images/resource/blockviewtopic_02.gif?v=1001) |
![](/images/resource/blockviewtopic_03.gif?v=1001) |
![](/images/resource/blockviewtopic_04.gif?v=1001) |
Date :
2022-03-24 17:49:03 |
By :
Vipada147 |
View :
410 |
Reply :
2 |
|
![](/images/resource/blockviewtopic_06.gif?v=1001) |
![](/images/resource/blockviewtopic_07.gif?v=1001) |
![](/images/resource/blockviewtopic_08.gif?v=1001) |
![](/images/resource/blockviewtopic_09.gif?v=1001) |
|
|
|
![](/images/resource/viewboard_06.gif?v=1001) |
![](/images/resource/viewboard_07.gif?v=1001) |
|
![](/images/resource/viewboard_08.jpg?v=1001) |
![](/images/resource/viewboard_09.gif?v=1001) |
![](/images/resource/viewboard_01.gif?v=1001) |
|
|
![](/images/resource/viewboard_03.gif?v=1001) |
![](/images/resource/viewboard_04.gif?v=1001) |
|
ขอบพระคุณ คุณ Стремись มากค่ะ เนื่องจากต้องเร่งส่งโปรแกรม ตัวแปร update_qty เป็นโปรแกรมเดิมที่ปรับปรุงจำนวน นำมาคัดแปลง ใช้กับ Update ราคา ไม่ทันได้เปลี่ยนค่ะ เมื่อทำงานได้ครบสมบูรณ์จะเปลี่ยนให้ถูกต้องค่ะ
code ที่แนะนำเป็นแนวทาง จะนำไปเขียนต่อนะค่ะ
|
ประวัติการแก้ไข 2022-03-24 19:55:19
![](/images/resource/blockviewtopic_01.gif?v=1001) |
![](/images/resource/blockviewtopic_02.gif?v=1001) |
![](/images/resource/blockviewtopic_03.gif?v=1001) |
![](/images/resource/blockviewtopic_04.gif?v=1001) |
Date :
2022-03-24 19:53:30 |
By :
Vipada147 |
|
![](/images/resource/blockviewtopic_06.gif?v=1001) |
![](/images/resource/blockviewtopic_07.gif?v=1001) |
![](/images/resource/blockviewtopic_08.gif?v=1001) |
![](/images/resource/blockviewtopic_09.gif?v=1001) |
|
|
![](/images/resource/viewboard_06.gif?v=1001) |
![](/images/resource/viewboard_07.gif?v=1001) |
|
![](/images/resource/viewboard_08.jpg?v=1001) |
![](/images/resource/viewboard_09.gif?v=1001) |
|
|
|
![](/images/digitalocean-banner.jpg)
|
Load balance : Server 05
|