今天晚上搞了近一个小时,就是这个原因,反斜杠插入到数据库中会始终当作转义字符。后来找到了解决办法,转义字符真麻烦,不知道是谁设计的,如果都像Delphi那样就好了。
if(!(get_magic_quotes_gpc())) {//去掉反斜杠为字符 $qgzx_sql=str_replace('\\','\\\\',$qgzx_sql); $zxj_sql=str_replace('\\','\\\\',$zxj_sql); $jxj_sql=str_replace('\\','\\\\',$jxj_sql); $dk_sql=str_replace('\\','\\\\',$dk_sql); } $sql="insert into data (stu_num,stu_name,stu_class,stu_phone,stu_idcard,stu_mail,stu_qgzx,stu_zxj,stu_jxj,stu_dk,bank_id,bank_count,stu_info)". "values('".$stu_num."','".$stu_name."','".$stu_class."','".$stu_phone."','".$stu_idcard."','".$stu_mail."','". $qgzx_sql."','".$zxj_sql."','".$jxj_sql."','".$dk_sql."','".$bank_id."','".$bank_count."','".$stu_info."')"; $result=mysql_query($sql);
直接用str_replace函数将\换成\\就好了。