10/10/2018, 11:09
Xóa dữ liệu với chechbox
Mình có cái form chứa 2 textbox: mã loại tin tức và tên loại tin tức. có 3 nút: xóa , xóa tất cả,hủy.
require("connect.php");
$sql="select * from loaitintuc";
$kq=mysql_query($sql,$link);
if(mysql_num_rows($kq)!=0)
{
while($dong=mysql_fetch_array($kq))
{
$matt=$dong["matintuc"];
$tenloaitt=$dong["tenloaitintuc"];
echo"$matt";
echo"$tenloaitt";
echo"<input type=checkbox name=checkbox onclick=selectupdate('$matt','$tenloaitt') >";
}
// ham selectupdate dung de hien thi du lieu len form
Mình định dùng checkbox để xóa nhiều dòng dữ liệu nhưng không làm được, các bạn giúp mình với
require("connect.php");
$sql="select * from loaitintuc";
$kq=mysql_query($sql,$link);
if(mysql_num_rows($kq)!=0)
{
while($dong=mysql_fetch_array($kq))
{
$matt=$dong["matintuc"];
$tenloaitt=$dong["tenloaitintuc"];
echo"$matt";
echo"$tenloaitt";
echo"<input type=checkbox name=checkbox onclick=selectupdate('$matt','$tenloaitt') >";
}
// ham selectupdate dung de hien thi du lieu len form
Mình định dùng checkbox để xóa nhiều dòng dữ liệu nhưng không làm được, các bạn giúp mình với
Bài liên quan
Như vậy sửa lại một chút đoạn code của bạn như sau:
require("connect.php");
$sql="select * from loaitintuc";
$kq=mysql_query($sql,$link);
if(mysql_num_rows($kq)!=0)
{
while($dong=mysql_fetch_array($kq))
{
$matt=$dong["matintuc"];
$tenloaitt=$dong["tenloaitintuc"];
echo'<input type=checkbox name="id[]" value="'.$matt.'" />';
}
Tiếp theo sử lý khi form được submit để thực hiện xóa.
if($_POST)
{
//Đếm xem có checkbox được chọn hay chưa, nếu có thì thực hiện query del
if(count($id)>0)
{
$id_del = implode(",",$id);
$qr = "delete from table_name where ID in (".$id_del.")";
//Continue code here . . .
}
}
<input name="them" type="submit" id="xoa" value="Xoa">
<input name="them" type="submit" id="xoatatca" value="Xoa tat ca" >
<?php
require("connect.php");
$sql="select * from thanhvien";
$kq=mysql_query($sql,$link);
if(mysql_num_rows($kq)!=0)
{
while($dong=mysql_fetch_array($kq))
{
$username=$dong["USERNAME"];
$password=$dong["PASSWORD"];
echo"<tr><td> $username </td>;
echo"<td> $password </td>";
echo "<td><input type ='checkbox' name='check[]' value=".'USERNAME'." onclick=selectupdate('$username','$password')</td></tr>";
file xuly.php
require ("connect.php");
$check=$_POST["check[]"];
$submit=$_POST["them"];
if($submit=='Xoa tat ca')
{
if(count($check)>0)
{
$id_del = implode(",",$check);
$qr = "delete from thanhvien where USERNAME in (".$id_del.")";
mysql_query($qr);
}
require ("up_user.php");
}
Các bạn giúp mình sửa nó với.
$qr = "delete from thanhvien where USERNAME in (".$id_del.")";
Mệnh đề where in chỉ đúng khi các giá trị là số, không xử lý được dạng ký tự:
Trường hợp hoạt động
$qr = "delete from thanhvien where ID in (1,2,3)";
Câu query sau sẽ không hoạt động
$qr = "delete from thanhvien where USERNAME in (son,minh,phuong)";
Trường hợp bạn muốn xóa theo USERNAME thì có thể sử dụng vòng for
for($i=0;$i<count($check);$i++){
$user = $check[$i];
$qr = "delete from thanhvien where USERNAME='$user'";
mysql_query($qr);
}
Chúc bạn làm được!