㈠ php怎麼實現批量刪除 實現批量刪除的代碼
1.前台
<!DOCTYPE html>
<html>
<head>
<title>批量刪除</title>
</head>
<body>
<scripttype="text/javascript">
//復選框
function checkall(all)
{
var ck = document.getElementsByClassName("ck");
if(all.checked)
{
for(var i=0;i<ck.length;i++)
{
ck[i].setAttribute("checked","checked");
}
}
else
{
for(vari=0;i<ck.length;i++)
{
ck[i].removeAttribute("checked");
}
}
}
</script>
<formaction="test.php"method="post">
<tableborder="1">
<tr><th><inputtype="checkbox"name="all"onclick="checkall(this)"/>id</th><th>名字</th></tr>
<!-- 此處調用顯示列表函數 -->
<?phpshow() ?>
<tr><tdcolspan="3"><inputtype="submit"value="批量刪除"></td></tr>
</table>
</form>
</body>
<?php
//顯示列表
function show()
{
//連接資料庫
@mysql_connect('localhost','root','');
mysql_select_db('test');
mysql_query('set names utf8');
$sql="select id,name from test";
$res=mysql_query($sql);
//循環取出數據
while($row=mysql_fetch_row($res))
{
echo "<tr>
<td>
<inputtype='checkbox'value='{$row[0]}'name='item[]'class='ck'/>
{$row[0]}
</td>
<td>{$row[1]}</td>
</tr>";
}
}
?>
</html>
2.後台
<?php
//接收post傳來的數組
$arr=$_POST["item"];
/**
* 批量刪除
* 思路:把前台批量選擇的數據放在數組里,刪除該數組即可
* @param $arr
* @return $res 成功or失敗
*/
functionbatch_del($arr)
{
@mysql_connect('localhost','root','');
mysql_select_db('test');
mysql_query('set names utf8');
//把數組元素組合為字元串:
$str= implode("','",$arr);
//in 表示多個
$sql="delete from test where id in('{$str}')";
$res= mysql_query($sql);
if(!$res){
echo"刪除失敗";
}else{
if(mysql_affected_rows()>0){
echo"刪除成功";
}else{
echo"沒有行受到影響";
}
}
}
//調用批量刪除函數
batch_del($arr);
㈡ php如何實現全選批量刪除
<SCRIPT LANGUAGE="JavaScript">
<!--
function quan()
{
if(document.getElementsByName("qx[]")[0].checked==false)
{
for(var i=0;i<document.getElementsByName("quanxuan[]").length;i++)
{
document.getElementsByName("quanxuan[]")[i].checked=false;
}
}
if(document.getElementsByName("液春棚qx[]")[0].checked)
{
for(var i=0;i<document.getElementsByName("quanxuan[]").length;i++)
{
document.getElementsByName("quanxuan[]")[i].checked=true;
}
}
}
//-->
function xuan()
{
var a=new Array();
var i;
var c=0;
for(i=0;i<document.getElementsByName("quanxuan[]").length;i++)
{
if(document.getElementsByName("quanxuan[]")[i].checked)
{
a[c]=document.getElementsByName("quanxuan[]")[i].value;
c++;
/*alert(a);*/
}
}
if(a.length==0)
{
alert("請選擇");
}
else
{
var ss=confirm("確定刪除?");
if(ss==true)
{
location.href="shanchu.php?id="+a;
}
}
}
</SCRIPT>
<input type="checkbox" name="qx[]" onclick="quan();"><font size="2">全選</font>
<a href="javascript:xuan()">選擇刪除</a>
<TABLE>
<TR>
<TD> <INPUT TYPE="checkbox" NAME="quanxuan[]" value="1"></TD>
<TD>a</TD>
</TR>
<TR>
<TD> <INPUT TYPE="checkbox" NAME="quanxuan[]" value="2"></TD>
<TD>b</TD>
</TR>
<TR>
<TD> <INPUT TYPE="checkbox" NAME="quanxuan[]" value="3"></TD>
<TD>c</TD>
<鬧則/TR>
<TR>
<TD> <INPUT TYPE="checkbox" NAME="quanxuan[]" value="4"></TD>
<TD>d</TD>
</TR>
<TR>
<TD> <INPUT TYPE="checkbox" NAME="quanxuan[]" value="5"><森掘/TD>
<TD>e</TD>
</TR>
</TABLE>
傳值以後 在PHP頁 接值 $=$_GET["a"]; 然後把 $ 拆分成數組
$=explode(',',$);
在循環刪除就可以
for($i=0;$i<count($idd);$i++)
{
$con->query("delete from 表名 where ajbg_bh='$[$i]'");
}
㈢ php 批量刪除指定文件代碼求助
$file = "$row[uppic]";//是圖片路棚裂徑
你並慶先echo一下 $file看看結果是否存在(正鏈蔽閉確);
㈣ 剛學php 後台批量刪除問題
<?php
if($_GET['xzdel']==1){//這里要使用比基伏較運算符==,而不是賦值運算符=
$N_ID=join(',',$_POST['BoxUser']);//$_POST本身是一個數組,要達到批量刪除的話乎耐,這里應該要將BoxUser已數組形式提交,那麼,這個時候就是搏頃攜個二維數組,那麼$_POST['BoxUser']得到的還是一個數組,那麼,為了適應sql語句的語法,把數組轉換成以逗號為分隔符的字元串,因為sql語句的in關鍵詞只能接受如1,2,3這樣的參數,不能直接接受數組,mysql沒有數組的概念
if($db->delete('t_nws','wheren_idin('.$N_ID.')')){
alert('刪除成功','new_list.php');
die;
}else{
echo$sql;
}}
以上是php部分,其他部分有空給你研究研究
表單部分:
<inputname='BoxUser'type='checkbox'value='".$row['n_id']."'>
這個name屬性,要以數組的形式進行提交, 這樣, php才會將你勾選的所有參數給提交
否則php只能接收到其中的一條
那麼,應該改成
<inputname='BoxUser[]'type='checkbox'value='".$row['n_id']."'>
㈤ php刪除文件夾下所有符合條件的文件
<?php
function showAllFiles($file) {
$fopen =opendir($file);
while(($path = readdir($fopen)) !== false) {
if($path=='..' || $path=='.') {
continue;
}
echo filesize($path),'<br />';//樓主可以把這句換掉就ok了,我的機子不試了
if(is_dir($path)) {
showAllFiles($pah);
}
}
}
showAllFiles('./');
㈥ PHP批量刪除、清除UTF-8文件BOM頭的代碼實例
記得運行代碼前先把文件備份一下哦,避免出現失敗問題。
代碼一:
復制代碼
代碼如下:
function
checkBOM
($filename)
{
global
$auto;
$contents
=
file_get_contents($filename);
$charset[1]
=
substr($contents,
0,
1);
$charset[2]
=
substr($contents,
1,
1);
$charset[3]
=
substr($contents,
2,
1);
if
(ord($charset[1])
==
239
&&
ord($charset[2])
==
187
&&
ord($charset[3])
==
191)
{
if
($auto
==
1)
{
$rest
=
substr($contents,
3);
rewrite
($filename,
$rest);
return
("<font
color=red>BOM
found,
automatically
removed.</font>");
}
else
{
return
("<font
color=red>BOM
found.</font>");
}
}
else
return
("BOM
Not
Found.");
}
代碼二:
復制代碼
代碼如下:
<?php
header('content-Type:
text/html;
charset=utf-8');
if(isset($_GET['dir'])){
//設置文件目錄,如果沒有設置,則自動設置為當前文件所在目錄
$basedir=$_GET['dir'];
}else{
$basedir='.';
}
$auto=1;/*設置為1標示檢測BOM並去除,設置為0標示只進行BOM檢測,不去除*/
echo
'當前查找的目錄為:'.$basedir.'當前的設置是:';
echo
$auto?'檢測文件BOM同時去除檢測到BOM文件的BOM<br
/>':'只檢測文件BOM不執行去除BOM操作<br
/>';
checkdir($basedir);
function
checkdir($basedir){
if($dh=opendir($basedir)){
while
(($file=readdir($dh))
!==
false){
if($file
!=
'.'
&&
$file
!=
'..'){
if(!is_dir($basedir.'/'.$file)){
echo
'文件:
'.$basedir.'/'.$file
.checkBOM($basedir.'/'.$file).'
<br>';
}else{
$dirname=$basedir.'/'.$file;
checkdir($dirname);
}
}
}
closedir($dh);
}
}
function
checkBOM($filename){
global
$auto;
$contents=file_get_contents($filename);
$charset[1]=substr($contents,0,1);
$charset[2]=substr($contents,1,1);
$charset[3]=substr($contents,2,1);
if(ord($charset[1])==239
&&
ord($charset[2])==187
&&
ord($charset[3])==191){
if($auto==1){
$rest=substr($contents,3);
rewrite($filename,$rest);
return
('
<font
color=red>找到BOM並已自動去除</font>');
}else{
return
('
<font
color=red>找到BOM</font>');
}
}else{
return
('
沒有找到BOM');
}
}
function
rewrite($filename,$data){
$filenum=fopen($filename,'w');
flock($filenum,LOCK_EX);
fwrite($filenum,$data);
fclose($filenum);
}
?>