通过php将单选按钮和复选框的值放入数据库中的1行


put the value of radio button and checkbox into 1 row in database via 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="fiel" 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) 
?>

您通常使用mysql中的insert函数。这里有一些基本但很好的解释,在这里你可以找到官方的解释,其中有更多的细节,但对于新手来说也更难理解。但是您必须从PHP中使用它,正如您在第一个链接示例中看到的那样。

从php读取时,这些值将作为常规$_POST或$_GET接收。记住还要使用mysql_real_eescape_string()

有了更多关于您的项目、表名、代码等的信息(阅读常见问题解答),我们将能够为您提供更多帮助。用回车来分隔你的想法,你写的东西真的很难阅读。此外,如果你把你迄今为止所做的尝试包括在内,那就太好了,这样你就不会给人一种希望我们做你的工作的感觉。

编辑

我以为你是一个新手,直到你把你的代码,所以我发布了一些非常基本的例子。下面是一些可能有效的代码:

<?php
$con = mysql_connect("localhost","root");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("project1", $con);
$Tile = mysql_real_escape_string($_POST[tile]);
$Field = mysql_real_escape_string($_POST[field]);
if ( !empty($Tile) && !empty($Field) )
{
  $insert="INSERT INTO menu(name, price) VALUES ('$Tile','$Field')";
  if (!mysql_query($insert, $con))
    {
    die('Error: ' . mysql_error());
    }
echo "1 record added";
}
else echo "Please select at least 1 menu.";
mysql_close($con) 
?>

为什么名称tile[]在menu.php中?仅用tile测试?我并不是说它错了,我只是说我从来没有见过。还有,你有什么问题?它什么都省不了?

请注意,if ( !empty($Tile) && !empty($Field) )还用于防止用户试图对您的页面进行恶意操作,而不仅仅是为了确保他们选择了一个菜单。