0

如何将单选按钮和复选框的值一起插入到 1 行数据库中。例如,表格包含菜单名称和食物的大小。数据库表包含食物和价格..所以当我们用复选框选择我们想要的菜单时,复选框的值将存储在食物(数据库的表)中并选择我们的食物使用单选按钮的大小,单选按钮的值将存储在价格(数据库表)

请帮助我,我是这个领域的新手,谢谢

这是代码

菜单.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>

价格.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) 
?>
4

1 回答 1

0

您通常使用 mysql 中的插入函数。是一些基本但很好的解释,在这里你可以找到更详细的官方解释,但对于新手来说也更难理解。但是您必须从 PHP 中使用它,如您在第一个链接示例中所见。

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

有了关于您的项目、表名、代码等的更多信息(阅读常见问题解答),我们将能够为您提供更多帮助。用return来分隔思想,你写的真的很难读。此外,如果您包含迄今为止尝试过的内容,那就太好了,这样您就不会觉得您希望我们做您的工作。

编辑

在您输入代码之前,我认为您更像是一个新手,所以我发布了一些非常基本的示例。现在这里有一些可能有效的代码:

<?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) )也用于防止用户尝试对您的页面进行恶意操作,而不仅仅是确保他们选择了一个菜单。

于 2012-07-16T05:13:56.007 回答