PHP MySql多行更新 [英] PHP MySql multi row update
本文介绍了PHP MySql多行更新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好,
我有两页要转换为一页.原始文件可让您输入信息并发布到更新页面,更新页面又会更新数据库.
我希望所有这些都发生在同一页面上,但我认为我遇到了麻烦,因为该页面可能未发布??
Update multiple rows in mysql<br> <?php error_reporting(E_ALL); mysql_connect("","",""); mysql_select_db("") or die("Unable to select database"); $sql = "SELECT product_id, product_sku, product_name, product_in_stock, product_in_stock_cardiff FROM mik1vm_product"; $result = mysql_query($sql) or die($sql."<br/><br/>".mysql_error()); $i = 0; ?> <table width="500" border="0" cellspacing="1" cellpadding="0"> <form name="form1" method="post" action=""> <tr> <td> <table width="500" border="0" cellspacing="1" cellpadding="0"> <tr> <td align="center">Product Id</td> <td align="center">SKU</td> <td align="center">Name</td> <td align="center">In Stock</td> <td align="center">In Stock Cardiff</td> </tr> <?php while ($products = mysql_fetch_array($result)){ ?> <tr> <td align="center"><? $products[''product_id'']; ?><? echo $products[''product_id'']; ?></td> <td align="center"><input name=''product_sku'' type="text" id="product_sku" value="<? echo $products[''product_sku'']; ?>"></td> <td align="center"><input name="product_name" type="text" id="product_name" value="<? echo $products[''product_name'']; ?>"></td> <td align="center"><input name="product_in_stock" type="text" id="product_in_stock" value="<? echo $products[''product_in_stock'']; ?>"></td> <td align="center"><input name="product_in_stock_cardiff" type="text" id="product_in_stock_cardiff" value="<? echo $products[''product_in_stock_cardiff'']; ?>"></td> </tr> <?php } ?> <tr> <td colspan="4" align="center"><input type="submit" name="Submit" value="Submit"></td> </tr> </table> </td> </tr> </form> </table> <?php // Update on submit... if(isset($_POST[''Submit'']) && $_POST[''Submit''] == ''Submit''){ $size = count($_POST[''product_id'']); $i = 0; while ($i < $size) { $product_sku= $_POST[''product_sku''][$i]; $product_id = $_POST[''product_id''][$i]; $query = "UPDATE mik1vm_product SET product_sku = ''$product_sku'' WHERE product_id = ''$product_id'' LIMIT 1"; mysql_query($query) or die ("Error in query: $query"); echo "$product_sku<br /><br />Updated!<br /><br />"; ++$i; } } mysql_close(); ?>
我是PHP的新手,所以请多多包涵...
错误-
注意:未定义的索引:第58行/home/itjustwo/public_html/test/test.php中的product_id
谢谢. (
sql)或die(
Hi all,
I have two pages that I''m trying to convert to one. The original lets you enter the info and posts to the update page which in turn updates the DB.
I want all this to happen on the same page, but I think I''m having trouble as the page is not posting maybe??
Update multiple rows in mysql<br> <?php error_reporting(E_ALL); mysql_connect("","",""); mysql_select_db("") or die("Unable to select database"); $sql = "SELECT product_id, product_sku, product_name, product_in_stock, product_in_stock_cardiff FROM mik1vm_product"; $result = mysql_query($sql) or die($sql."<br/><br/>".mysql_error()); $i = 0; ?> <table width="500" border="0" cellspacing="1" cellpadding="0"> <form name="form1" method="post" action=""> <tr> <td> <table width="500" border="0" cellspacing="1" cellpadding="0"> <tr> <td align="center">Product Id</td> <td align="center">SKU</td> <td align="center">Name</td> <td align="center">In Stock</td> <td align="center">In Stock Cardiff</td> </tr> <?php while ($products = mysql_fetch_array($result)){ ?> <tr> <td align="center"><? $products[''product_id'']; ?><? echo $products[''product_id'']; ?></td> <td align="center"><input name=''product_sku'' type="text" id="product_sku" value="<? echo $products[''product_sku'']; ?>"></td> <td align="center"><input name="product_name" type="text" id="product_name" value="<? echo $products[''product_name'']; ?>"></td> <td align="center"><input name="product_in_stock" type="text" id="product_in_stock" value="<? echo $products[''product_in_stock'']; ?>"></td> <td align="center"><input name="product_in_stock_cardiff" type="text" id="product_in_stock_cardiff" value="<? echo $products[''product_in_stock_cardiff'']; ?>"></td> </tr> <?php } ?> <tr> <td colspan="4" align="center"><input type="submit" name="Submit" value="Submit"></td> </tr> </table> </td> </tr> </form> </table> <?php // Update on submit... if(isset($_POST[''Submit'']) && $_POST[''Submit''] == ''Submit''){ $size = count($_POST[''product_id'']); $i = 0; while ($i < $size) { $product_sku= $_POST[''product_sku''][$i]; $product_id = $_POST[''product_id''][$i]; $query = "UPDATE mik1vm_product SET product_sku = ''$product_sku'' WHERE product_id = ''$product_id'' LIMIT 1"; mysql_query($query) or die ("Error in query: $query"); echo "$product_sku<br /><br />Updated!<br /><br />"; ++$i; } } mysql_close(); ?>
I''m very new to PHP so please bear with me...
ERROR -
Notice: Undefined index: product_id in /home/itjustwo/public_html/test/test.php on line 58
Thanks.
解决方案
sql = "SELECT product_id, product_sku, product_name, product_in_stock, product_in_stock_cardiff FROM mik1vm_product";
result = mysql_query(
sql) or die(
这篇关于PHP MySql多行更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文