2011-10-04 75 views
0

我一直在尋找一個答案了大約一個小時,並不能找到什麼,我找......MYSQL插入形式 - 插入來自相關選擇框

我有3 1 3的可能的選擇(drop_1,drop_2,drop_3)每個值(int)表示數據庫中名爲category的相同字段。

我正在尋找一種方法來選擇三個值中的最大值作爲插入到category字段中的值。

這是我一直在努力(顯然不工作):

​​3210

如果我選擇從每個3盒一個選項,這僅適用,但如果我選擇只有1個選項或者2個表單以空白值提交給DB。

+0

你能顯示那個窗體的html嗎? – jancha

+0

請顯示錶格,以便我們看到值的選擇。 –

+1

可能的SQL注入。在插入查詢之前,您應該學習使用'mysql_real_escape_string()'。 –

回答

0

你的PHP似乎罰款:

<?php 

$_POST['drop_1'] = 100; 
$_POST['drop_2'] = null; 

$drop_1 = ($_POST['drop_1']); 
$drop_2 = ($_POST['drop_2']); 
$drop_3 = ($_POST['drop_3']); 
$category = max($drop_1, $drop_2, $drop_3); 

echo $category; 

將輸出:

100 

那麼,問題出在形式。

0
$drop_1 = mysql_real_escape_string($_POST['drop_1']); 
$drop_2 = mysql_real_escape_string($_POST['drop_2']); 
$drop_3 = mysql_real_escape_string($_POST['drop_3']); 
$query = "INSERT INTO table1 (category) 
      SELECT GREATEST('$drop_1', '$drop_2', '$drop_3') as new_cat ";