Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > สอบถามการเขียนโค้ดโดยใช้ checkbox เพื่อกำหนดข้อมูลที่จะ insert ลง database ครับ


[PHP] สอบถามการเขียนโค้ดโดยใช้ checkbox เพื่อกำหนดข้อมูลที่จะ insert ลง database ครับ

 
Topic : 133929



โพสกระทู้ ( 26 )
บทความ ( 0 )



สถานะออฟไลน์



ืคือต้องการที่จะให้ผู้ใช้ติ๊กเลือก checkbox ข้อมูลที่ต้องการเพื่อที่ผมจะได้อัพลง database และนำไปใช้ต่อครับ

DATA TABLE
01.<?php
02.SESSION_START();
03.require_once('config.php');
04.require_once('class/class.upload.php') ;
05. 
06.    $ven = $conn->query("SELECT * FROM itemforuser ");
07.    $numr = $ven->num_rows;
08.?>
09. 
10.<html>
11.<head>
12.<meta charset="utf-8">
13.<title>test</title>
14.<script type="text/javascript" src="jquery.js"></script>
15.<script type="text/javascript" src="jquery.dataTables.min.js"></script>
16.<link rel="stylesheet" type="text/css" href="jquery.dataTables.min.css">
17.<script type="text/javascript">
18.function MM_goToURL() { //v3.0
19.  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
20.  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
21.}
22.</script>
23.<script>
24.$('input[type=checkbox]').live("change",function(){
25.    var target = $(this).parent().find('input[type=hidden]').val();
26.    if(target == 0)
27.    {
28.        target = 1;
29.    }
30.    else
31.    {
32.        target = 0;
33.    }
34.    $(this).parent().find('input[type=hidden]').val(target);
35.});
36.</script>
37.</head>
38. 
39.<body>
40.<div align="center">
41.<form id= "MyForm" method= "POST" action= "test_save.php">
42.<table width="70%" border="1" id="myTable">
43.<thead>
44.  <tr>
45.    <th width="5%"><div align="center">NO.</div></th>
46.    <th width="10%"><div align="center">ACCOUNT CODE</div></th>
47.    <th width="25%"><div align="center">ITEM NAME</div></th>
48.    <th width="5%"><div align="center"></div></th>
49.  </tr>
50.  </thead>
51.  <tbody>
52. 
53.<?php
54.      
55.$i=0;
56. 
57.while($i<$numr && $ven2 = $ven->fetch_assoc())
58.{$i++;
59.     
60.?>
61.<tr>
62.<td><center><?php echo $ven2["id"]; ?></center></td>
63.<td><center><?php echo $ven2["acc_name"]; ?></center></td>
64.<td><?php echo $ven2["item_name"]; ?></td>
65.<td><center><input type="checkbox" ><input type="hidden" name="dataset[]" value="0" ></center></td>
66.</tr>
67.<?php
68.}
69.?>
70.</tbody>
71.</table>
72.</div>
73.<div align="center">
74.<input type="submit" name="submit" value="Submit">
75.<input type=button onClick='window.history.back()' value='Cancel'>
76.</div>
77.</form>
78.<script> 
79.    $(document).ready( function () {
80.    $('#myTable').DataTable();
81.} );
82. 
83.</script>
84. 
85.</body>
86.</html>


อันนี้คือส่วนอัพลง database ครับ
UPLOAD DATA
01.<html>
02.<head>
03.<title></title>
04.<script type="text/javascript">
05.function MM_goToURL() { //v3.0
06.  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
07.  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
08.}
09.</script>
10.</head>
11.<body>
12.<?php
13.    ini_set('display_errors', 1);
14.    error_reporting(~0);
15. 
16.    $serverName = "localhost";
17.    $userName = "root";
18.    $userPassword = "1234";
19.    $dbName = "purchasenewtest";
20. 
21.    $conn = mysqli_connect($serverName,$userName,$userPassword,$dbName);
22.    mysqli_set_charset($conn, 'utf8');
23. 
24.    if($dataset == 0)  {
25.    $sql = " INSERT INTO r(accountcode,orders)
26.        VALUES ('".$_POST["dataset[]"]."','".$_POST["dataset[]"]."' ) ";
27.    $query = mysqli_query($conn,$sql);
28.        }
29.         
30.    if($query) {
31.        echo " <p align=center> Record add successfully </p> ";
32.        }
33. 
34.    mysqli_close($conn);
35.?>
36.<div align="center">
37.<br></br>
38.<input type=button onClick="MM_goToURL('parent','vendor.php');return document.MM_returnValue" value='DONE'>
39.</div>
40.</body>
41.</html>


ปัญหาคือผมอยากทราบว่าถ้ากรณีแบบนี้เราจะเอา row ที่ถูกติ๊กอัพลงอีก database นึงได้อย่างไรครับ
ปล.จำนวนขึ้นอยู่กับผู้ใช้นะครับ



Tag : PHP, MySQL, HTML, JavaScript, jQuery

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-07-23 16:38:02 By : 2246598742088718 View : 963 Reply : 6
 

 

No. 1



โพสกระทู้ ( 4,764 )
บทความ ( 8 )



สถานะออฟไลน์


$dataset มาจากไหน เขียนตัวแปรต้องระบุที่มาด้วยไม่ใช่เรียกลอยๆจะเรียกเฉยๆก็ได้

ถ้า input เป็น array ก็ต้องเอามาวนลูป foreach ก่อนแล้วไล่อัพเดทเรียงตัวไปครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-23 17:38:45 By : mr.v
 

 

No. 2



โพสกระทู้ ( 26 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.v เมื่อวันที่ 2019-07-23 17:38:45
รายละเอียดของการตอบ ::
ขอบคุณมากครับผมนึกว่าค่ามันจะมาจากการกด submit ด้วย มันคือ ชุดข้อมูลของ array ในหน้า index ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-23 20:47:40 By : 2246598742088718
 

 

No. 3



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



สถานะออฟไลน์


if($dataset == 0) {

$sql = " INSERT INTO r(accountcode,orders)
VALUES ('".$_POST["dataset[]"]."','".$_POST["dataset[]"]."' ) ";

สีแดงคือใช้ผิดวิธี

อันแรกก็ตามความเห็น mr.v นะครับ ต้องใช้รูปแบบนี้ $_POST['dataset'][ index_no ]

ส่วนสีแดง แถวล่างเหมือนกันก็ต้องใช้ให้ถูก รูปแบบเดียวกัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-24 11:31:45 By : Chaidhanan
 

 

No. 4



โพสกระทู้ ( 26 )
บทความ ( 0 )



สถานะออฟไลน์


ตอนนี้ผมแก้ไขแล้ว แต่ว่าค่ายังไม่เข้าดาต้าเบสช่วยเช็คให้หน่อยนะครับ
INDEX
001.<?php
002.SESSION_START();
003.require_once('config.php');
004.require_once('class/class.upload.php') ;
005. 
006.    $ven = $conn->query("SELECT * FROM itemforuser ");
007.    $numr = $ven->num_rows;
008.?>
009. 
010.<html>
011.<head>
012.<meta charset="utf-8">
013.<title>test</title>
014.<script type="text/javascript" src="jquery.js"></script>
015.<script type="text/javascript" src="jquery.dataTables.min.js"></script>
016.<link rel="stylesheet" type="text/css" href="jquery.dataTables.min.css">
017.<script type="text/javascript">
018.function MM_goToURL() { //v3.0
019.  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
020.  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
021.}
022.</script>
023.<script>
024.$('input[type=checkbox]').live("change",function(){
025.    var target = $(this).parent().find('input[type=hidden]').val();
026.    if(target == 0)
027.    {
028.        target = 1;
029.    }
030.    else
031.    {
032.        target = 0;
033.    }
034.    $(this).parent().find('input[type=hidden]').val(target);
035.});
036.</script>
037.</head>
038. 
039.<body>
040.<div align="center">
041.<form id= "MyForm" method= "POST" action= "">
042.<table width="70%" border="1" id="myTable">
043.<thead>
044.  <tr>
045.    <th width="5%"><div align="center">NO.</div></th>
046.    <th width="10%"><div align="center">ACCOUNT CODE</div></th>
047.    <th width="25%"><div align="center">ITEM NAME</div></th>
048.    <th width="5%"><div align="center"></div></th>
049.  </tr>
050.  </thead>
051.  <tbody>
052. 
053.<?php
054.      
055.$i=0;
056. 
057.while($i<$numr && $ven2 = $ven->fetch_assoc())
058.{$i++;
059.     
060.?>
061.<tr>
062.  <td><center><input type="hidden" name="txtID[]" value="<?php echo $ven2["id"];?>"><?php echo $ven2["id"];?></center></td>
063.  <td><center><input type="hidden" name="txtACC[]" value="<?php echo $ven2["acc_name"];?>"><?php echo $ven2["acc_name"];?></center></td>
064.  <td><input type="hidden" name="txtITM[]" value="<?php echo $ven2["item_name"];?>"><?php echo $ven2["item_name"];?></td>
065.<td><center><input type="checkbox" ><input type="hidden" name="dataset[]" value="0" ></center></td>
066.</tr>
067.<?php
068.}
069.?>
070.</tbody>
071.</table>
072.</div>
073.<div align="center">
074.<input type="submit" name="submit" value="Submit">
075.<input type=button onClick='window.history.back()' value='Cancel'>
076.</div>
077.</form>
078.<script> 
079.    $(document).ready( function () {
080.    $('#myTable').DataTable();
081.} );
082. 
083.</script>
084.<?php
085. 
086.if (isset($_POST[submit]))
087. 
088.{
089.if($dataset == 1){
090.foreach($_POST['txtID'] as $i => $txtID){
091. 
092.$txtACC = $_POST['txtACC'][$i];
093.$txtITM = $_POST['txtITM'][$i];
094. 
095.    $serverName = "localhost";
096.    $userName = "root";
097.    $userPassword = "1234";
098.    $dbName = "purchasenewtest";
099. 
100.    $conn = mysqli_connect($serverName,$userName,$userPassword,$dbName);
101.    mysqli_set_charset($conn, 'utf8');
102. 
103.$sql = "insert into r (id , accountcode , orders ) values ( '$txtID','$txtACC','$txtITM' )";
104. 
105.    $query = mysqli_query($conn,$sql);
106. 
107.}
108.}
109.}
110. 
111.?>
112. 
113.</body>
114.</html>



ประวัติการแก้ไข
2019-07-24 16:07:46
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-24 16:04:38 By : 2246598742088718
 

 

No. 5



โพสกระทู้ ( 4,764 )
บทความ ( 8 )



สถานะออฟไลน์


$_POST[submit]

ศึกษาวิธีเขียนที่ถูกหลักการและเป็นปัจจุบันหน่อยนะครับ
https://phptherightway.com/
https://www.php.net/manual/en/language.types.array.php

ตรวจดูจุดอื่นๆด้วย แล้วถ้ามันไม่มา แทนที่จะปล่อยโค้ดให้มันรันทำงานไปก็ควรจะรู้จัก debug บ้างว่ามันรับอะไรมา เช่นเอามา print_r($_POST);exit(); เพื่อดู


ประวัติการแก้ไข
2019-08-01 00:19:11
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-08-01 00:17:54 By : mr.v
 

 

No. 6



โพสกระทู้ ( 26 )
บทความ ( 0 )



สถานะออฟไลน์


ตอนนี้ทำได้แล้วครับ


ประวัติการแก้ไข
2019-08-01 10:39:07
2019-08-01 10:52:47
2019-08-01 11:00:22
2019-08-01 17:28:11
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-08-01 10:35:38 By : 2246598742088718
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามการเขียนโค้ดโดยใช้ checkbox เพื่อกำหนดข้อมูลที่จะ insert ลง database ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่