MySQL查询显示PHP中的模具错误

时间:2012-06-07 10:56:37

标签: php mysql

以下是我的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>

4 个答案:

答案 0 :(得分:8)

mysql_query() or die(mysql_error());

答案 1 :(得分:0)

非常有趣的公式。但是,我宁愿推荐这样的东西:

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);

但请注意,用户不应看到此类错误。

答案 2 :(得分:0)

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

从变量中删除简单引号

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

答案 3 :(得分:0)

$sql= "insert into login (field1, field2, ....) values

(&#39; $ UNAME&#39;&#39; XXXX&#39;,$丝氨酸,&#39; $排版&#39;,$年,&#39; $地址&#39;,& #39; $每&#39;,$无,&#39; $电子邮件&#39;)&#34 ;;

另外请使用BIND而不是用户的未过滤数据。 另外一点:请使用mysqli_*代替旧mysql_*