0

ショップの商品を予約するスクリプトをコーディングしようとしています。データをmysqlデータベースに送信することで機能し、「ショップ」に値を返します。コードは次のとおりです。ショップを見る

<form action="reserveitems3.php" method="POST">
<?php 



// Connects to your Database 
 mysql_connect("localhost", "dbname", "password") or die(mysql_error()) ; 
 mysql_select_db("dbname") or die(mysql_error()) ; 

 //Retrieves data from MySQL 
 $data = mysql_query("SELECT * FROM products") or die(mysql_error()); 

//Puts it into an array 
while($info = mysql_fetch_array( $data )) { 



// render each dtabase result and wrap in a div
echo "<div class='product'>";
echo "<table width='100%' cellpadding='0' cellspacing='0' border='0'>";
echo "<tr>
<td class='image'><img src=http://my-creativewebfusion.com/mysql_data/file/".$info['photo'] . "></td>
<td class='name'>".$info['name'] . "<br/><br/>".$info['desc'] . "</td>
<td class='phone'><input name='".$info['id']."' type='checkbox' value='yes' style='position:relative;float:right;right:50px;' class='checked' onclick='document.getElementById('other').innerHTML = 'Check Box = ' + this.checked;'/><br/><br/>
<div class='alignright'>Price:&nbsp;".$info['price'] . "</div>
<div class='alignright'>QTY:&nbsp;<input type='text' name='reserve' style='width:40px;'/></div>

<div class='alignright'> ";

$sum_total = $info['stock']  - $info['reserve'] ;


if ($sum_total == 0)
{
echo "<p style='color:red;'>Out of stock</p>";
}
        else
{


        echo "<p style='color:green;float:right;'>",($sum_total),"&nbsp;&nbsp;In stock</p>&nbsp;";
         echo "<p style='color:green;'>".$info['reserve']."&nbsp;Reserved</p>";

}

echo "</div></td></tr>";
echo "</table>";
echo "</div><input type='submit' value='Submit' />";
}
?> 

</form>

これは予約商品のphpファイルです

<?php 



 // Connects to your Database 
 mysql_connect("localhost", "dbname", "password") or die(mysql_error()) ; 
 mysql_select_db("dbname") or die(mysql_error()) ; 

 //This gets all the other information from the form 

$reserve=$_POST['reserve'];

 //Writes the information to the database 
  mysql_query("UPDATE products SET reserve= reserve + '$reserve' WHERE id ='$id'");



   $result = mysql_query($sql) or die(mysql_error());

 ?> 

エラーが返され、更新されません。どんな助けでも大歓迎です。

ありがとう

4

2 に答える 2

0

変化する

mysql_query("UPDATE products SET reserve= reserve + '$reserve' WHERE id ='$id'");

mysql_query("UPDATE products SET reserve = reserve" . $reserve . " WHERE id ='$id'");
于 2013-05-21T13:54:11.573 に答える
0

文字列 (引用符で囲まれた $reserve) を数値に追加しようとしています。更新クエリで引用符を削除してみてください。つまり、次のようになります。

mysql_query("UPDATE products SET reserve= reserve + $reserve WHERE id ='$id'");
于 2013-05-21T13:50:31.320 に答える