我是非常新的php和mysql,我試圖添加一個產品到購物車。我認爲我的代碼工作正常,除了「quantitat + 1」部分。 (如果我只是用一個數字代替它)我不知道我應該怎麼說我想更新並添加1現有數量無論它是什麼。加入購物車
我得到沒有錯誤,所以我不知道是什麼問題。 我試過($ row ['quantitat'];)+ 1,它不起作用
我是一個絕對的初學者,所以我想我犯了一個非常明顯的錯誤,或者我有一些東西不明白。
if(isset($_GET["id"])) {
$result = mysql_query("SELECT * FROM carret
WHERE producte='".$_GET["id"]."'");
}
if (mysql_num_rows($result)>0) { // if already there is one or more
mysql_query("UPDATE carret SET quantitat = quantitat + 1
WHERE producte='".$_GET["id"]."'");
echo "UPDATE. I have added 1";
}else{
mysql_query("INSERT INTO carret (producte, quantitat)
VALUES (".$_GET["id"].",1)");
echo "INSERT. I have inserted one new product";
}
你的腳本是容易受到SQL注入 – Baba
@Baba:這是人誰說,他們是一個令人難以置信的幫助的註釋「*非常新的PHP和MySQL *」 ! Narcis,巴巴的意思是說,你應該閱讀[Bobby Tables](http://stackoverflow.com/questions/332365/xkcd-sql-injection-please-explain)的故事,以瞭解你寫過你的代碼的方式。您應該使用[準備語句](http://stackoverflow.com/a/60496/623041),將您的變量作爲參數傳遞給其中,而這些參數不針對SQL進行評估。 – eggyal