<?php
$passed = $_COOKIE["passed"];
if ($passed != "TRUE")
{header("location:index.htm");
exit();}
?>
<?php
$cook =$_POST["cook"]; //抓值
$money =$_POST["money"];
echo "您是第 ".$id." 號會員";
echo "<p>";
echo '您的餐點為:' ;
echo "<p>";
$a=count($cook); //print COOK
for($i=0;$i<$a;$i++)
{echo ($i+1),$cook["$i"]."," ;}
echo "<p>" ;
echo '價格: ';
$b=count($money); //print MONEY
for($i=0;$i<$b;$i++)
{echo $money["$i"]."," ; }
$c=count($money); // $total
$sum = 0 ;
for($i=0;$i<$c;$i++)
{$sum += $money["$i"] ;}
echo "<p>";
echo '餐點總額為: ';
echo $sum ;
$link = mysql_connect("localhost", "root", "123");
if (!$link) die("建立資料連接失敗");
$db_selected = mysql_select_db("member", $link);
if (!$db_selected) die("開啟資料庫失敗");
$sql = "SELECT * FROM cord";
mysql_query("SET NAMES 'utf8'");
$result = mysql_query($sql, $link);
if (!$result) die("執行 SQL 命令失敗");
mysql_free_result($result);
$d=count($money);
echo $d;
for($i=0 ; $i<$d ;$i++)
{ $sql = "INSERT INTO cord (cord_id, cord_cook, cord_money)
VALUES ('$id','$cook[$i]', '$money[$i]')"; }
$result = mysql_query($sql, $link);
if (!$result) die("執行 SQL 命令失敗");
mysql_close($link);
?>
我想要請問一下 位什麼我 ECHO $d 的值是四,不過我的資料庫只有寫進一筆資料寫進ID跟MONEY,然後請大大幫我看一下我的FOR迴圈內的SQL語法輸入有無錯誤,萬分感謝!
這個--->VALUES ('$id','$cook[$i]', '$money[$i]')";
您的資料庫當然只有一筆資料
for($i=0 ; $i<$d ;$i++)
{ $sql = "INSERT INTO cord (cord_id, cord_cook, cord_money)
VALUES ('$id','$cook[$i]', '$money[$i]')"; }
$result = mysql_query($sql, $link);
您的 for迴圈跑了$d次,
但是您的insert command只跑了一次啊....
您要的應該是這樣吧:
for($i=0 ; $i<$d ;$i++)
{ $sql = "INSERT INTO cord (cord_id, cord_cook, cord_money)
VALUES ('$id','$cook[$i]', '$money[$i]')";
$result = mysql_query($sql, $link);}