我到处寻找,我找不到任何有用的东西。我正在尝试创建一个在线羊游戏,并开始玩游戏,用户需要选择他们的第一只羊的颜色和名称。提交后,它会成功将数据插入我的MySQL数据库,但会显示以下错误:
错误:1 您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以便在第1行的“1”附近使用正确的语法
这是我连接数据库的语法:
<?php
$conn = mysqli_connect("localhost","root","","flyingfeetranch");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
这是我的表单和我用来插入的内容:
<form name="properties" method="POST">
<input type="radio" name="color" value="white" selected="selected">White<br>
Name: <input type="text" name="name" value=" "/>
<input type="submit" name="submitname" value="Submit"/>
</form>
</div>
<?php
if(isset($_POST['submitname']))
{
$Color = $_POST['color'];
$Name = $_POST['name'];
$Age = "12";
$sql = mysqli_query($conn, "INSERT INTO babydolls (name, color, age)VALUES ('$Name', '$Color', '$Age')");
if($conn->query($sql) === TRUE)
{
echo "New record created successfully";
}
else
{
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
?>
答案 0 :(得分:4)
“1”源于查询两次,这意味着它有效。如果它是一个“0”,那那就是一个不同的球赛。
删除其中一个查询功能。
只需检查变量即可。
shared_setup
注意,你在这里开放sql注入,使用预备语句。
注意:您还应该检查空字段并检查是否设置了收音机,如果您碰巧从中移除了“已选择”(此处的注释位)。如果没有填充这些字段并且您的db不接受空/空值,那么这可能会导致问题。
参考文献: