通讯订阅死亡没有错误

时间:2012-06-01 13:25:11

标签: php mysql function mysql-real-escape-string

我正在写一份订阅时事通讯的问题。问题是,当有人点击提交时,我似乎没有收到任何错误,或者实际上没有任何错误,所有发生的情况是它们都会显示一个空白的白页,仅此而且很难诊断。

基本上,政策提醒表单上有一个名为newslettersubscribe的字段,如果等于是,则用户也订阅了新闻通讯列表以及他们注册的政策提醒列表。我是不是100%确定我是否正确使用了real_escape_string函数?。

<?php
$email = real_escape_string($_POST['email']);
$name = real_escape_string($_POST['name']);
$newslettersubscribe = real_escape_string($_POST['newslettersubscribe']);
if ($newslettersubscribe == 'no'){
}
else{
mysql_query("INSERT INTO ymeg_chronoforms_data_NewsletterDesigner (email, name)
VALUES ('$email', '$name')") or die(mysql_error());
}
?>

编辑&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;

如果删除真正的转义字符串,我会收到错误

Unknown column 'email' in 'field list'

在点击提交时,这可能解释了白页,上述错误意味着什么?。

编辑2&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;

这是我尝试连接到的数据库中的示例记录:

cf_id   6
cf_uid  5f04f21f80a596f17341cec92a48b197
cf_created  2012-06-01 10:13:16
cf_modified     
cf_ipaddress    217.154.186.84
cf_user_id  44
name    Iain Simpson
email   test@1testdsdsfswqewed.csdom

1 个答案:

答案 0 :(得分:1)

尝试回显值以确保它不是简单默认为

的问题
$newslettersubscribe = 'no';

您需要做一些简单的事情,如下所示:

$email = real_escape_string($_POST['email']);
$name = real_escape_string($_POST['name']);
$newslettersubscribe = real_escape_string($_POST['newslettersubscribe']);

echo $email.' | '.$name.' | '.$newslettersubscribe;
exit();

至少应该向您展示您所需变量的值。它只是简单地排除故障,以及它如何影响您的SQL查询。