|
|
|
สอบถามการบันทึกข้อมูล checkbox เลือกหลายๆอันในแต่ละเรคคอร์ด ให้เป็นแบบ array |
|
|
|
|
|
|
|
เอาโค๊ดที่เขียนมาลงไว้ด้วยครับ ช่วยแก้ไมได้รับจ้างทำ
|
|
|
|
|
Date :
2019-04-22 07:00:15 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หน้ากรอกข้อมูลคะ
<input type="hidden" name="hdnID" value=<?php echo $objResult["id"];?>
<input type="checkbox" name="chkassettype[]" value="land">
<input type="checkbox" name="chkassettype[]" value="tree">
<input type="checkbox" name="chkassettype[]" value="building">
ส่วนตอน insert
for($i=0;$i<count($_POST["chkassettype"]);$i++)
{
if(trim($_POST["chkassettype"][$i]) != "")
{
$strSQL = "INSERT INTO process ";
$strSQL .="(iddata,process,lastupdate) ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["hdnID"]."','".$_POST["txtprocess"]."', ";
$strSQL .="',now()) ";
$objQuery = mysql_query($strSQL);
}
}
|
|
|
|
|
Date :
2019-04-22 07:15:29 |
By :
keewa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตัวอย่างแบบ oop
Code (PHP)
<?php
$num_row = ?;
while($objResult = $result->fetch_assoc()):?>
<input type="hidden" name="hdnID[]" value=<?=$objResult->id?>
<input type="checkbox" name="chkassettype[<?=$objResult->id?>][0]" value="land">
<input type="checkbox" name="chkassettype[<?=$objResult->id?>][1]" value="tree">
<input type="checkbox" name="chkassettype[<?=$objResult->id?>][2]" value="building">
<?php endwhile;?>
ส่วนตอน insert
Code (PHP)
$sql = 'insert into process set iddata=? , process = ?, lastupdate = now();' ;
foreach($_POST['hdnID'] as $key);$i++)
{
for($i = 0; $i<3; $i++){
if(isset($_POST["chkassettype"][$key][$i]) ){
$stmt = $conn->prepare( $sql);
if(// ส่วนตรวจสอบ 1){
$stmt->bindparam('ss' , [$key, ['land', 'tree', 'building'][$i]]);
$stmt->exec();
if(// ส่วนตรวจสอบ 2){
//
}
}
}
}
}
การใช้ prepare จะช่วยป้องกัน sql injection ได้ด้วย
วิเคราะห์โค๊ด แล้วใส่ส่วนตรวจสอบการคิวรี่เอาเองนะครับ
เปิดอ่าน document mysql_result: prepare จะฃ่วยได้เยอะ
|
|
|
|
|
Date :
2019-04-22 09:27:57 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากนะคะ แต่หนูไม่เคยทำแบบ oop อ่ะค่ะ งงเลย อย่าว่าหนูโง่เลยนะคะ ไม่เข้าใจอ่ะคะ
|
|
|
|
|
Date :
2019-04-23 09:20:02 |
By :
keewa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คะ ก็ศึกษาจากลิงค์อันนี้หล่ะคะ แต่ทำแล้วไม่สามารถเก็บค่าของรหัส iddata ตามรูปแบบที่ต้องการ
|
|
|
|
|
Date :
2019-04-27 14:11:58 |
By :
keewa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
while($objResult = msyql_fetch_assoc($result) ):?>
<input type="hidden" name="hdnID[]" value=<?=$objResult['id']?>
<input type="checkbox" name="chkassettype[<?=$objResult['id']?>][0]" value="land">
<input type="checkbox" name="chkassettype[<?=$objResult['id']?>][1]" value="tree">
<input type="checkbox" name="chkassettype[<?=$objResult['id']?>][2]" value="building">
<?php endwhile;?>
ประเด็นการอ้างอิง อยู่ที่กำหนด index ให้กับ element ให้ถูกต้อง
<input type="checkbox" name="chkassettype[index_ใช้_id][index_element]" value="land">
เมื่อกำหนด index ถูกต้อง เราก็อ้างอิง array ได้ถูกต้อง
ส่วนโค๊ดการ insert ก็ของเดิมประยุกต์เอาหน่อย ถ้าไม่เข้าใจก็เปิด document อ่านคูมือบ่อยๆ
มันไม่ได้อยู่ที่โง่ มันอยู่ที่ขี้เกียจซะมากกว่า
สมองขนาดนี้ ไอคิวไม่ได้น้อยๆ
แค่ขาดความเอาใจใส่ ความขยันที่จะหาความรู้ครับ
|
|
|
|
|
Date :
2019-04-27 16:43:50 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|