Php mysqli插入查询不工作无错误
我不明白为什么我的php脚本有时不起作用,它在从数据库表中删除所有数据后确实起作用Php mysqli插入查询不工作无错误,php,mysql,mysqli,sql-insert,Php,Mysql,Mysqli,Sql Insert,我不明白为什么我的php脚本有时不起作用,它在从数据库表中删除所有数据后确实起作用 <?php $con = mysqli_connect("localhost","root","","db_csbn"); if(mysqli_connect_errno()) { echo "MySQLi Connection was not established: " . mysqli_connect_error(); } ?> 首先,你的} 在querydoelse之后,
<?php
$con = mysqli_connect("localhost","root","","db_csbn");
if(mysqli_connect_errno())
{
echo "MySQLi Connection was not established: " . mysqli_connect_error();
}
?>
首先,你的}
在query
doelse
之后,使用printf(“错误:%s\n”,mysqli\u错误($link))
在查询的}
之后执行doelse
并检查错误。我添加了if(mysqli_query($con,$sql)){echo”警报(请求id(请保存):\n$id);“;}否则{echo”警报('asd');“;}即使警报框没有显示upWellasd
也没什么用,但这给了你什么?如果它在删除表中的所有数据后工作,那么最可能的原因是您尝试插入的后续数据违反了唯一约束。我首先会怀疑id
。您是否每次都对snumber
使用相同的值?按照建议启用错误报告,这将不会是一个猜测游戏。问题是,您构建id
的方式不会使其唯一,并且必须唯一才能插入新行。你为什么需要这样的id而不是普通的自动递增整数?如果您需要知道行是何时插入的,您可以在另一列中添加时间戳。@Thamus usemysqli\u error($con)
这家伙甚至会很快根据您实际使用的内容修改代码。我添加了echomysqli\u error($con)代码>但是它仍然没有给我一个错误。然后有更严重的错误,看看apache日志和php错误日志
<?php
include "connect.php";
$tor = (isset($_POST['tor']) ? "1" : "0");
$frm = (isset($_POST['frm']) ? "1" : "0");
$dp = (isset($_POST['dp']) ? "1" : "0");
$gm = (isset($_POST['gm']) ? "1" : "0");
$hd = (isset($_POST['hd']) ? "1" : "0");
$cr = (isset($_POST['cr'])? "1" : "0");
$ch = (isset($_POST['ch']) ? "1" : "0");
$snumber = $_POST['snumber'];
$documents = $tor.$frm.$dp.$gm.$hd.$cr.$ch;
echo $documents;
$date = date("Y-m-d");
if($tor || $frm || $dp || $gm || $hd || $cr || $ch)
{
$id = str_replace("-","",$date).$snumber;
$sql = "INSERT INTO `tbl_requests` (`id`, `dr`, `snumber`, `date`) VALUES('".$id."', '".$documents."', '".$snumber."', '".$date."');";
if( mysqli_query($con, $sql))
{
echo"<script>alert(Request id (Please Save):\n $id);</script>";
}
}
}
?>