以下是我的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>
答案 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_*