|
|
|
เพิ่งหัดเขียนโปรแกรมภาษา PHP งงตรงนี้ เราบันทึกข้อมูลจะให้แจ้งเตือนว่าบันทึกเรียบร้อย พอกดตกลง ก็ปิดหน้าต่างเลยค่ะ |
|
|
|
|
|
|
|
สวัสดีค่ะ เพิ่งเริ่มเขียนโปรแกรมภาษา PHP ได้อาทิตย์นึงค่ะ เรียนรู้ตามสื่อต่างไป เอาค่ะ
พอดี งง นิดหน่อยค่ะ พอดีเราจะให้โปรแกรมเมื่อกดบันทึกข้อมูลขึ้นแจ้งเตือนว่า บันทึกเรียบร้อยแล้ว พอกด ตกลง ก็ปิดหน้าต่างนั้นไปเลย
ใช้ iframe ในการซ่อนหน้าต่างที่บันทึกไว้ Save.php
เราทำ 2 อย่างนี้รวมกันไม่ได้ค่ะ ทำได้แยกแต่ละอย่าง พอกดบันทึกมันก็ขึ้นแจ้งเตือนพอกดตกลงมันจะรีเฟชหน้านั้น อีกอย่างนึง พอกดบันทึกมันก็จะปิดโปรหน้าต่างนั้นเลยค่ะ
พอลองเอาโค้ดมารวมกัน ทำไม่ได้ค่ะ มีพี่ท่านไหนพอจะแนะนำให้บ้างได้ไหมค่ะ
Index.php
<form action="Savex.php" type="hidden" name="autoSumForm" method="post" target="iframe_target">
<iframe id="iframe_target" name="iframe_target" src="#" style="width:0;height:0;border:0px solid #fff;"></iframe>
<input type="hidden" size=5 name="x1" id="x1" value="<?php echo $IDx ?>" readonly/>
<script language="JavaScript">
function showResult(result)
{
if(result==1)
{
document.getElementById("divResult").innerHTML = "<font color=green> Save successfully! </font>";
}
else
{
document.getElementById("divResult").innerHTML = "<font color=red> Error!! Cannot save data </font>";
}
}
</script>
<div id="divResult"></div>
<select name="type" width: 25px id="type">
<label for="type">การชำระเงิน:</label>
<option value="เงินสด">เงินสด</option>
<option value="เงินเชื่อ">เงินเชื่อ</option>
<option value="เก็บเก่า">เก็บเก่า</option>
</select>
<br><br>
ราคา :<input class="right" type=text name="target" style="text-align: center" size=10 value="<?php echo $pricex ?>" onFocus="startCalc();" readonly onBlur="stopCalc();">
<br> <br>
จำนวน : <input class="right" type=text name="sumassess" style="text-align: center" style="background-color:powderblue;" size=10 value="" onFocus="startCalc();" onBlur="stopCalc();">
<br><br>
รวมขาย :<input type=text name="gap" style="text-align: center" style="border: 1px #0000FF solid; border-bottom: 3px navy double" size=10 readonly>
<br><br>
สาขา :<input type=text name="branch" style="text-align: center" value="<?php echo $branchx ?>" size=10 readonly>
<button type="submit" class="btn btn-success" onclick="myFunction()">บันทึก</button>
<button type="submit" class="btn btn-success" onclick="myFunction()">ยอดขายรวม</button>
</form>
Save.php
<?php
include 'Dbconnect.php';
$x1 = $_POST['x1']; //รหัสลูกค้า
$target = $_POST['target']; //ราคาขายต่อหน่วย
$sumassess = $_POST['sumassess']; //จำนวนกระสอบ
$gap = $_POST['gap']; //ราคาขายรวม
$branch = $_POST['branch']; //สาขา
$type = $_POST['type']; //ประเภทการชำระเงิน
$sql = mysqli_query($conn,"INSERT INTO Sale_tbl (CustID,Ice_no,Ice_amt,Branchcode,PaymentType) VALUES ('$x1','$sumassess','$gap','$branch','$type')") ;
$strSQL="INSERT INTO Sale_tbl (CustID,Ice_no,Ice_amt,Branchcode,PaymentType) VALUES ('$x1','$sumassess','$gap','$branch','$type'";
$dbQuery = mysql_query($strSQL);
if($dbQuery){
echo 'complete'," on ",mysql_affected_rows(), ' records';
} else echo 'not compleate';
mysqli_close($conn);
?>
Tag : PHP
|
|
|
|
|
|
Date :
2022-04-09 10:25:39 |
By :
น้องใหม่หัดเขียน |
View :
551 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แนะนำแบบนี้นะครับ
form แยกเป็นไฟล์นึง เวลา submit ก็ไปอีกไฟล์ อย่าไปใช้ iframe ทำแบบนั้นเลยครับ เวลาทำงานจริง ท่านี้ ไม่ควรใช้ครับ
A.php (submit) --> B.php
|
|
|
|
|
Date :
2022-04-09 14:48:43 |
By :
mongkon.k |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมเลือกใช้ iframe
web app หลักๆ จะแบ่งเป็น ฝั่ง server และ client
server คืิอ ส่วนที่ทำงานอยู่เบื้องหลัง รวมไปถึง database ภาษาที่ใช้ เช่น PHP, ASP, JSP, Python, ...
client คือ ส่วนที่แสดงให้ user เห็น ใช้ JS, CSS, HTML
event คือ เหตุการณ์ที่เกิดขึ้นระหว่างการทำงานของโปรแกรม อาจถูกสั่งการด้วย User หรือไม่ก็ได้ เช่น
เมื่อมีการคลิกเมาส์ซ้ายให้เกิดอะไร
เมื่อคลิกขวาให้ทำงานอย่างไร
...
ทั้งสองอย่างนี้ทำงานที่ฝั่ง client (มีการรับ Input จาก User)
การรับส่งข้อมูลระหว่าง client-server มีเทคโนโลยีที่เรียกว่า Ajax มาช่วย
แนะนำศึกษาจาก w3school เพื่อปูพื้นฐานก่อน จะได้รู้ว่าอะไรเป็นอะไร
|
|
|
|
|
Date :
2022-04-09 15:03:35 |
By :
009 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าจะเอาแบบหน้าไม่เปลี่ยนควรใช้ ajax
แต่ถ้ามือใหม่ มองข้ามไปเลย ajax เอา form ธรรมดา ง่ายๆ ให้ชำนาญก่อนจะดีกว่า
|
|
|
|
|
Date :
2022-04-09 21:04:52 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
กรณีเป็น iframe
กด submit ด้วย Form ธรรมดา
ส่วนที่ response กลับไปยัง client คือ javascript สั่งปิด window
Code (JavaScript)
<script>
setTimeout(()=>{
parent.window.close();
}, 20);
</script>
|
|
|
|
|
Date :
2022-04-12 13:42:23 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|