gpt4 book ai didi

PHP/MySQL : Unable to insert a single row only

转载 作者:行者123 更新时间:2023-11-29 10:18:43 25 4
gpt4 key购买 nike

我正在尝试创建一个页面,允许用户输入执行特定任务所需的步骤。然而,每当我提交一个步骤时,多个相似的记录就会存储在 mysql 数据库中。因此,如果我输入“Do this”,在我的 mysql 数据库中,两条记录将存储相同的数据这是我的代码...

<?php

$conn = new mysqli("localhost", "root","","KFC");
if(isset($_POST['Submit_btn']))
{
session_start();
$var_value = $_SESSION['R_ID'];

$Name= mysqli_real_escape_string($conn, $_POST['Step']);

$sql= "INSERT INTO `step`(`Step`, `R_ID`) VALUES ('$Name','$var_value')";

mysqli_query($conn,$sql);
if (!mysqli_query($conn,$sql))
{
echo("Error description: " . mysqli_error($conn));
}
}
mysqli_close($conn);
?>
<html>
<body>
<div id="bodyContent">
<h1> Submit Steps </h1>
</div>
<?php
mysql_connect('localhost', 'root', '');
mysql_select_db('garden');
$result = mysql_query("SELECT * FROM step WHERE R_ID='$var_value'");
$rows = mysql_num_rows($result);
echo "So far you have submitted " . $rows . " steps for your recipe.";
?>
<form method="post">
<table>
<tr>
<td>STEP: </td>
<td>
<textarea type="text" name="Step" class="textInput"></textarea>
</td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" name="Submit_btn" value="submit">
</td>
<td>
<input type="submit" name="Continue_btn" value="Continue">
</td>
</tr>

</table>
</form>
</body>
</html>

最佳答案

您正在运行执行查询两次。

mysqli_query($conn,$sql);

该指令执行您拥有的插入查询。您执行一次,然后再次执行以验证函数的 bool 返回值。您只需使用验证行。

这就是你所拥有的:

  mysqli_query($conn,$sql);
if (!mysqli_query($conn,$sql))
{
echo("Error description: " . mysqli_error($conn));
}

您只需要:

  if (!mysqli_query($conn,$sql))
{
echo("Error description: " . mysqli_error($conn));
}

验证行将执行该函数并返回您需要的 bool 值。

关于PHP/MySQL : Unable to insert a single row only,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49724822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com