Php更新表

时间:2014-08-12 15:31:52

标签: php

$up = mysql_query("UPDATE tblregistration SET firstname='$firstname' ,lastname='$lastname',Home_Address='$Haddress',Church_Name='$Churchname',Church_Address='$CAddress',Zone='$zones',District='$dis',Dob='$Dobs',Age='$age',Gsm='$Telephone',
Sex='$sexs',Email='$Emails',Health_Challenges='$HealthIssue',Pastor='$PastorNm',Pastor_Mobile='$PastorMb',Councellor_Name='$Councellornm',Councellor_Mobile='$Councellornum',Next_of_kin_name='$noks',Next_of_kin_mobile='$nokmobiles',Parent_name='$lastname ',
Candidate_sig='$firstname',Head_councellor_sig='$Councellornm',category='$category',Amount='$amt',TellerNumber='$TellNumber',dat='$dates',PayDate='$Paydate',BankName='$Bank',yearr='$yearr' WHERE reg_id='$f'");

$res = mysql_query($up) or trigger_error(mysql_error()." in ".$up);

我一直收到这条错误消息。

  

注意:您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在#1;'附近使用正确的语法。在第1行1中的C:\ xampp \ htdocs \ conference \ update.php第688行

1 个答案:

答案 0 :(得分:4)

您正在双重执行查询:

$up = mysql_query("UPDATE ...");
       ^^^^^^^^^^^--- execute your query and return a statement handle
$res= mysql_query($up);
      ^^^^^^^^^^^^^^^^^---take your statement handle and try to execute it

尝试

$sql = "UPDATE ...";
$res = mysql_query($sql) or die(mysql_error());

代替

错误的具体原因:您的第二个mysql_query()调用正在使用FIRST mysql_query()调用的结果句柄作为SQL字符串。查询调用需要一个字符串,因此它接受该语句句柄并将其视为字符串。但是“字符串化”语句句柄不会给你原始的sql字符串。句柄只是一个指向mysql _ *()代码复合体内部结构的内部指针,这是1来自的地方。对于PHP,它看起来像你在做

$result = mysql_query('1');