国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php批量添加數據與批量更新數據的實現方法

2024-05-04 23:28:59
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php批量添加數據與批量更新數據的實現方法,涉及針對表單的處理與sql語句的靈活使用,非常具有實用價值,需要的朋友可以參考下
 
 

本文實例講述了php批量添加數據與批量更新數據的實現方法。分享給大家供大家參考。具體分析如下:

php如果要批量保存數據我們只要使用sql的insert into語句就可能實現數據批量保存了,如果是更新數據使用update set就可以完成更新了,操作方法都非常的簡單,下面整理兩個例子.

批量數據錄入

設計方法:同時提交多條表單記錄,為每一條記錄設置相同的文本域名稱,然后在表單處理頁中,通過for循環來讀取提取表單提交的數據,最后以數據的形式將數據逐條添加到數據庫中.

其中,應用一個count()函數來獲取數組中元素的個數.int count(mixed var);

表單提交頁面,代碼如下:

復制代碼代碼如下:
<form name="form1" method="post" action="index_ok.php"> 
<tr> 
<td>商品名稱</td> 
<td>編號</td> 
<td>單價</td> 
<td>數量</td> 
<td>產地</td> 
<input name="data" type="hidden" value="<?php echo $data;?>"> 
</tr> 
 
<tr> 
<td><input name="sp_name[]" type="text" id="sp_name" size="15"></td> 
<td><input name="sp_number[]" type="text" id="sp_number" size="10"></td> 
<td><input name="price[]" type="text" id="price" size="8"></td> 
<td><input name="counts[]" type="text" id="counts" size="8"></td> 
<td><input name="address[]" type="text" id="address" size="15"></td> 
</tr> 
 
<input type="submit" name="submit" value="提交"> 
<input type="reset" name="reset" value="重置"> 
</form>

數據庫連接頁,代碼如下:
復制代碼代碼如下:
<?php 
$id=mysql_connect("localhost","root","password") or die('connection failed'.mysql_error()); 
if(mysql_select_db('mydatabase',$id)) 
echo ""; 
else 
echo('select db failed:'.mysql_error()); 
?>

表單處理頁,代碼如下:
復制代碼代碼如下:
<?php session_start(); include("conn/conn.php"); 
if($submit==true){ 
    for($i=0;$i<count($sp_name);$i++){ 
        $path=$_POST["sp_name"][$i]; 
        $path1=$_POST["sp_number"][$i]; 
        $path2=$_POST["price"][$i]; 
        $path3=$_POST["counts"][$i]; 
        $path4=$_POST["address"][$i]; 
        $query=mysql_query("insert into tb_products(sp_name,sp_number,price,counts,address,data) values('$path','$path1','$path2','$path3','$path4','$data');}
    if($query==true){ 
        echo"提交成功"; 
    else 
        echo"提交失敗";} 

?>

批量更新數據

 

主要通過while, list(),each()函數來實理數據的批量更新,list()函數用于一次性為多個變量賦值,代碼如下:

復制代碼代碼如下:
<?php session_start(); include("conn/conn.php");?> 
<form name="form1" method="post" action="index_ok.php"> 
<?php $query="select * from tb_users"; 
          $result=mysql_query($query); 
             if($result==true){ 
             while($myrow=mysql_fetch_array($result)){ 
?> 
<tr> 
<td><input name="<?php echo $myrow[id];?> type="checkbox" value="<?php echo $myrow[id]; ?></td> 
<td><?php echo $myrow[user];?></td> 
<td><?php echo $myrow[popedom];?></td> 
<td><?php echo $myrow[operation];?></td> 
</tr> 
<?php }} ?> 
 
<tr> 
<input type="submit" name="submit" value="激活"> 
<input type="submit" name="submit2" value="凍結"> 
</tr> 
</form>

表單處理頁,代碼如下:
復制代碼代碼如下:
<?php session_start(); include("conn/conn.php") 
if($submit=="激活"){ 
    while(list($name,$value)=each($_POST)){ 
        $result=mysql_query("update tb_user set operation='激活' where id='".$name."'"); 
    if($result==true){ 
        echo "<script> alert('激活成功');window.location.href='index.php';</script>";}} 
 
if($submit2=="凍結"){ 
    while(list($name,$value)=each($_POST)){ 
        $result=mysql_query("update tb_user set operation='凍結' where id='".$name."'"); 
    if($result==true){ 
        echo "<script> alert('凍結成功');window.location.href='index.php';</script>";}} 

?>

總結:心細的朋友會發現兩個例子都有幾個共同點,一個是表單from的表單名是以counts[]數組形式了,而在php處理接受頁面都會使用for 或while來實現遍歷了,下面我就簡單的給大家分析這兩個例子.

 

counts[]:這個在表單中是代表數組,如果你有10個表單那么我們name=counts[] 意思他們內個都是一樣數組,知道這個是數組了就知道下面知道為什么會使用遍歷了.

for或while:因為表單過來的是數組我們就可以遍歷數組然后對數據進行保存了,如下代碼:

while(list($name,$value)=each($_POST)){ 或

for($i=0;$i<count($sp_name);$i++){ 兩個實現結果是一樣的.

希望本文所述對大家的php程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤壁市| 确山县| 汉中市| 碌曲县| 巴楚县| 广西| 北票市| 中江县| 巴彦淖尔市| 利辛县| 神农架林区| 金湖县| 宁国市| 额敏县| 桓台县| 沁源县| 柘城县| 宣恩县| 交口县| 望城县| 新丰县| 景泰县| 上饶县| 正阳县| 东阿县| 高青县| 陈巴尔虎旗| 蓬莱市| 女性| 福海县| 宣恩县| 行唐县| 沙河市| 伊春市| 广南县| 中西区| 曲周县| 罗甸县| 林周县| 什邡市| 穆棱市|