Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL查询显示PHP中的死错误_Php_Mysql - Fatal编程技术网

MySQL查询显示PHP中的死错误

MySQL查询显示PHP中的死错误,php,mysql,Php,Mysql,下面是我的test.php页面,它从registration.php页面重定向。 这里的一切都很好,除了sql查询。所有警报标记都能很好地显示会话变量值,但此页面会出现“错误,插入查询失败”错误。 尝试了所有的可能性,如在查询中引用变量等,但没有任何效果。。请找个人帮忙 <?php include "connect.php"; session_start(); $ser= $_SESSION['service']; $comp=$_SESSION['comp']; $yr= $_SESS

下面是我的test.php页面,它从registration.php页面重定向。 这里的一切都很好,除了sql查询。所有警报标记都能很好地显示会话变量值,但此页面会出现“错误,插入查询失败”错误。 尝试了所有的可能性,如在查询中引用变量等,但没有任何效果。。请找个人帮忙

<?php
include "connect.php";
session_start();

$ser= $_SESSION['service'];
$comp=$_SESSION['comp'];
$yr= $_SESSION['year'];
$addr= $_SESSION['addr'];
$per= $_SESSION['per'];
$no= $_SESSION['no'];
$email= $_SESSION['email'];
$uname= $_SESSION['uname']; 
  echo "<script>alert('$ser')</script>";
  echo "<script>alert('$comp')</script>";
  echo "<script>alert('$yr')</script>";
  echo "<script>alert('$no')</script>";
  echo "<script>alert('$addr')</script>";
if($ser=='designing'){
   $ser=1;
}else if($ser=='webdev'){
   $ser=2;
}else{
   $ser=3;
}
echo "<script>alert('$ser')</script>";
$sql= "insert into login values 
      ('$uname','xxxx',$ser,'$comp',$yr,'$addr','$per',$no,'$email')";
mysql_query($sql) or die('Error, insert query failed');
?>

<span style="font-family:Tahoma; font-weight:bold; font-size:11px;color:#666666" 
      align=center>Your Registration is successful...<br/>Our team will contact you at
      the earliest...
</span>

非常有趣的公式。但是,我更愿意推荐如下内容:

mysql_query($sql);
if (mysql_error()) die('Error, insert query failed');
如果你对它为什么死亡感兴趣,那么:

mysql_query($sql);
if ($error = mysql_error()) die('Error, insert query failed with:' . $error);
但是要注意,这种错误对于用户来说是不可见的

mysql_query() or die(mysql_error());
从变量中删除简单引号

  $sql= "insert into login values 
      ($uname, xxxx, $ser, $comp, $yr, $addr, $per, $no, $email)";
(“$uname'、'xxxx'、$ser'、$comp'、$yr'、$addr'、$per'、$no'、$email')

另外,请使用绑定,而不是用户提供的未过滤数据。
另一个:请使用
mysqli.*
而不是旧的
mysql.*

好吧,你可能想检查
mysql.\u error()
…的输出…只是一个想法…你能显示
echo$sql;
echo mysql.\u error();
的输出吗?用
die('error:'mysql.\u error()替换
die('error,')
以获取有关错误的详细信息。我现在尝试了您的所有建议,但echo mysql_error();完全没有回应&尽管如此,我的错误页面显示如下方式::插入登录值('pra','xxxx',1','xyz.com',2011,'Hyd','xyz',1234567890,'xyz@xyz.com“)错误:mysql_Error()@用户1441956,您是否可以尝试将查询
插入登录值('pra','xxxx',1,'xyz.com',2011,'Hyd','xyz',1234567890,'xyz@xyz.com)
在mysql数据库中,查看它是否工作。仍不工作:(事实上,我从早上开始就在用各种可能的方法处理这个单insert语句,唯一的错误是sql部分,我的表是这样的::uname,paswd,service int,company,year int,addr,con_per,con_no-int,email evrything是varchar吗?执行时是否显示mysql错误?您是否确定mys转义了插入的值ql_real_escape_string()不,它不显示myql错误,即使是一个完美的输入,它也不会得到insertedIt。它会抛出一个错误。服务器或数据库缓存呢?它是复制数据库吗?PHP错误呢。PHP错误报告启用了吗?oor,这个表有带自动递增的整数ID吗?您可能会超出整数值范围。Then-MySQL通常不报告任何内容,只是不插入新行。:-)MySQL\u query($sql)或die('Error,insert query failed');是的,我也写了同样的内容,但不起作用
  $sql= "insert into login values 
      ($uname, xxxx, $ser, $comp, $yr, $addr, $per, $no, $email)";
$sql= "insert into login (field1, field2, ....) values