【发布时间】:2017-06-21 06:21:28
【问题描述】:
我试图插入两个表但得到这个错误
错误:INSERT INTO provide_help (amount) VALUES (40,000.00) 列计数与第 1 行的值计数不匹配`
下面是我的插入代码
<?php
session_start(); {
//Include database connection details
include('../../dbconnect.php');
$amount = strip_tags($_POST['cat']);
$field1amount = $_POST['cat'];
$field2amount = $field1amount + ($field1amount*0.5);
$sql = "INSERT INTO provide_help (amount) VALUES ( $field1amount)";
if (mysqli_query($conn, $sql))
$sql = "INSERT INTO gh (ph_id, amount) VALUES (LAST_INSERT_ID(), $field2amount)";
if (mysqli_query($conn, $sql))
{
$_SESSION['ph'] ="<center><div class='alert alert-success' role='alert'>Request Accepted.</div></center>";
header("location: PH.php");
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
}
?>
但是当我做这样的事情时它会起作用
$sql = "INSERT INTO provide_help (amount) VALUES ( $field2amount)";
我只是将$field1amount 更改为$field2amount
但我不希望这样,我还想获取 $field1amount 的值并插入它
如有任何帮助,将不胜感激,谢谢
【问题讨论】:
-
您对SQL Injections 持开放态度,应该真正使用Prepared Statements 而不是连接您的查询。特别是因为您根本没有逃避用户输入!这也可以解决您的逗号问题。