INSERT INTO第一次不工作,后来工作

时间:2014-12-29 18:05:07

标签: php mysql insert-into

    <?php
include "../au.php";

$towhom = $_POST['towhom'];
$content = $_POST['content'];

date_default_timezone_set('Asia/KolKata');
$xyz = date(DATE_RFC2822);

$conn = mysql_connect('localhost', 'local', 'local');
mysql_select_db('chat', $conn);

$q = "INSERT INTO $na (one, two, five, content, ip)
VALUES ('$na', 'sent', '$xyz', '$content', '$ip');";
$w = "INSERT INTO $towhom (one, two, five, content, ip) VALUES ( '$na', 'recieved', '$xyz', '$content', '$ip' );";

if (mysql_query($q)){
echo "<br>&nbsp; Message sent to '".$towhom."'";
} else {
    echo "<br>&nbsp; Failed 1";
}
if (mysql_query($w)){
echo "<br>&nbsp; Message sent to '".$towhom."'";
} else {
    echo "<br>&nbsp; Failed 2";
}
?>

描述:这是消息传递脚本。 $ towhom和$ content取自表格。 $ xyz已定义。 $ na和$ ip在au.php文件中定义。

问题:当$ w工作时$ q不成功。

3 个答案:

答案 0 :(得分:0)

没有任何其他信息,我的猜测是$towhom中包含的字符串不引用有效表。如果我向&#34; some_user&#34;发送消息,则$w中存储的查询将如下所示:

INSERT INTO some_user (...) VALUES (...)

您的意思是为每个用户创建一个唯一的表吗?如果是这样,你确定存在这样的表吗?一些错误输出非常有用。

答案 1 :(得分:-1)

首先,从查询中删除不需要的分号

$q = "INSERT INTO $na (one, two, five, content, ip)
VALUES ('$na', 'sent', '$xyz', '$content', '$ip')";
$w = "INSERT INTO $towhom (one, two, five, content, ip) VALUES ( '$na', 'recieved', '$xyz', '$content', '$ip' )";

然后

  

问题:当$ w工作时$ q不成功。

如果查询不成功意味着可能有很多原因。您应该使用mysql_query($q)die(mysql_error())

进行检查

答案 2 :(得分:-1)

认为多行字符串导致问题......虽然不确定......

尝试,

$q = "INSERT INTO $na (one, two, five, content, ip) " +
     "VALUES ('$na', 'sent', '$xyz', '$content', '$ip')";