2012-07-16 46 views
-1

如何將單選按鈕和複選框的值一起插入到1行數據庫中。例如,表格包含菜單名稱和食物大小。該數據庫表包含食物和價格..所以當我們選擇我們想要的複選框,並選擇我們的食物使用單選按鈕的大小,複選框和單選按鈕的值將存儲在1行數據庫... 請幫我找出通過php將單選按鈕和複選框的值放入數據庫中的1個字段

這是我的代碼 menu.php

<form action="price.php" method="post"> 

Menu : <br> 
<input type="checkbox" value="Siomay" name="tile[]">Siomay <br> 
    <input type="radio" name="field[]" value="4" />Small 
    <input type="radio" name="field[]" value="5" />Large<br> 


<input name="confirm" type=submit id="confirm" value='Confirm'> 

</form> 

price.php

<?php 
$con = mysql_connect("localhost","root"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
mysql_select_db("project1", $con); 

$insert="INSERT INTO menu(name, price) VALUES ('".$_POST['tile']"','".$_POST['field']"')"; 

if (!mysql_query($insert, $con)) 
{ 
die('Error: ' . mysql_error()); 
} 
echo "1 record added"; 
mysql_close($con) 
?> 
+0

什麼是您要插入的表的名稱?列名稱和價格? – 2012-07-16 04:56:23

+0

檢查你的$ con = mysql_connect(「localhost」,「root」); < - 密碼? – swapnesh 2012-07-16 04:57:04

回答

0

它似乎並不像你需要你的名字是一個數組,所以我會第一從你的「名字」attr中刪除「[]」 r html。

在php中,連接兩個值來創建一個值,然後將其插入到數據庫中。喜歡的東西:

<?php 
$tile = $_POST['tile']; 
$field = $_POST['field']; 

//concatenate your variables however you want them stored in your db (here it will be tile, field) 
$combo = $tile . ', ' . $field; 

//connect to db (notice the mysqli function, not mysql!) 
$con = mysqli_connect("localhost","username","password","database_name"); 
if (!$con) 
{ 
    die('Could not connect: ' . mysqli_error()); 
} 

//build query and store result in $result var 
$query = "INSERT INTO `tablename` (name) VALUES (" . $combo . ")"; 
$result = mysqli_query($query); 

echo "1 record added"; 
?> 

凡(名)將要存儲在您的連結值的列名。顯然,請填寫用戶名,密碼,db_name等信息。

注意:現在使用mysqli函數(或PDO)而不是mysql函數來防止sql注入是標準做法。這不是相關的,但無論如何這都是好的做法。希望這可以幫助!

0

你可以嘗試類似;

<?php 
    $size = sizeof($_POST['tile']) 
    while($size >= 0) { 
     $insert="INSERT INTO menu(name, price) VALUES ('".$_POST['tile'][$size]"','".$_POST['field'][$size]"')"; 

    $size--; 
    } 
?> 
相關問題