剛學php
$con = mysql_connect("localhost","root","","PhysicalTest");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("PhysicalTest", $con);
mysql_query("SET NAMES 'gbk_chinese_ci'");
error_reporting(E_ALL ^ E_NOTICE);
if(isset($_COOKIE['student_id']))
{
$student_id=$_COOKIE['student_id'];
}
$result=mysql_query("SELECT * FROM 成績 WHERE 學號 ='$student_id'");
$row=mysql_fetch_array($result);
if(empty($row)) echo "";
else{
echo <<< HTML
...
標紅的那個為什麼會有warning, mysql_fetch_array(): supplied argument is not a valid MySQL result 。。。資料庫表格也沒有錯啊。。。求問怎麼回事。
回複討論(解決方案)
$result=mysql_query("SELECT * FROM 成績 WHERE 學號 ='$student_id'");
查詢失敗了
你可以用 echo mysql_error(); 看一下究竟是什麼錯
估計是中文表名和欄位名的問題
$result=mysql_query("SELECT * FROM 成績 WHERE 學號 ='$student_id'") or die(mysql_error());
看看有什麼錯誤
$result=mysql_query("SELECT * FROM 成績 WHERE 學號 ='$student_id'");
查詢失敗了
你可以用 echo mysql_error(); 看一下究竟是什麼錯
估計是中文表名和欄位名的問題
--------------------------------------------------------------------------------------
結果是這樣:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '��績 WHERE 學號 =''' at line 1
是不是因為表名、列名是中文?要改成英文?
你先這樣試試
$result=mysql_query("SELECT * FROM `成績` WHERE `學號` ='$student_id'");
但不是長久之計,你不願起英文名字,也可以用漢語拼音呀
你先這樣試試
$result=mysql_query("SELECT * FROM `成績` WHERE `學號` ='$student_id'");
但不是長久之計,你不願起英文名字,也可以用漢語拼音呀
下次不用中文了,多謝