MySQL(和/或)PHP问题

时间:2011-09-05 19:58:41

标签: php mysql sql

所以我有这个,

<?php
require "database.php";

$to=$_GET['toF'];
$content=$_POST['message_contentl'];
$from=$_GET['fromF'];

$ck_reciever = "SELECT Username FROM accounts WHERE username = '".$to."'";     

 if( mysql_num_rows( mysql_query( $ck_reciever ) ) == 0 ){
die("The user you are trying to contact don't exist. Please go back and try again.<br>
<form name=\"back\" action=\"Send_FR.php\" method=\"post\">
<input type=\"submit\" value=\"Try Again\">
</form>
");
}else{

$a1 = $_POST['message_contentl'];
$a2 = $_GET['fromF'];
$a3 = $_GET['toF'];
mysql_query("INSERT INTO Friends (fr_message, From, To) VALUES ('$a1', '$a2', '$a3')");     OR die("Could not send the message: <br>".mysql_error()); 
echo "The Friend Request Was Successfully Sent!";
?>

但它不起作用。

所有这一切都是给我这个错误信息:

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在第1行的'From,To)VALUES('','Extro','Syncro')附近使用正确的语法

请帮帮忙?

2 个答案:

答案 0 :(得分:5)

fromto是SQL中的保留字,在MySQL中你可以通过将它们包含在反引号中来使用保留字作为列或表名,但我强烈建议不要使用保留字作为专栏名称,它令人非常困惑。小例子ex absurdo:

 select `select`, `from` from `where` where `like` like 'like';

是的,引擎会吃它,但你会承认它可以更具可读性: - )

答案 1 :(得分:1)

FROM是一个保留的SQL关键字 - 如果您有一个列或具有该名称的表,则必须反引用(`)它。