PHP MySql多行更新 [英] PHP MySql multi row update

查看:85
本文介绍了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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆