個人ブログサイトのデバッグ問題
php mysql を使用して個人ブログサイトを作成しましたが、デバッグ中に問題が発生しました。皆様の熱心なご協力により、デバッグはほぼ完了しましたが、まだデバッグできない問題がいくつかあります。解決してください。ヘルプ
【1】警告: mysql_fetch_row() は、D:WWWblogshow_pub.php の 7 行目で指定されたリソースであるブール値を想定しています。コードは次のとおりです。 🎜> error_reporting(E_ALL^E_NOTICE);
session_start();
include "conn/conn.php";
$pubsql = "select * from tb_public where id= " .$_GET['id'];
$pubrst = mysql_query($pubsql,$link);
$pubrow = mysql_fetch_row($pubrst);
echo "
".$pubrow[ 2]."
";
?>
【2】error: mysql query コードは次のとおりです。
error_reporting(E_ALL^E_NOTICE);
include "Conn/conn.php";
$query="select * from tb_tpsc where id=".$recid;
$result=mysql_query($query);
if(!$ result) die("エラー: mysql クエリ");
$num=mysql_num_rows($result);
if($num echo $data; ----------
読み方を学ぶエラー報告
警告: mysql_fetch_row() はパラメータ 1 がリソースであることを期待しており、ブール値が与えられています
意味: mysql_fetch_row() 関数は最初のパラメータがリソースであることを期待していますが、現在はブール (論理) 値です
それでは、なぜ $pubrst がリソースではなく論理値なのでしょうか?
mysql_query 関数の説明:
mysql_query() は、SELECT、SHOW、EXPLAIN、または DESCRIBE ステートメントのリソース識別子のみを返します。
クエリが正しく実行されない場合、FALSE
を返します。
クエリの実行が間違っていることは明らかです
さらに上に進み、$pubsql = "select * from tb_public where id= ".$_GET['id'];
この生成されたステートメントについては、 SQL 命令、$_GET['id'] が空の場合、つまり URL に id=xxx がない場合、$pubsql は
select * from tb_public where id=
になります。明らかに、これは次のとおりです。コマンドが間違っています
これを
$_GET['id'] がなくても SQL コマンドは間違っていません:
select * from tb_public where id=''
せいぜい何も見つからない 以上です
-----解決策のアイデア--------------------- -
問題 2、echo $query 毛織物?
------解決策のアイデア----------------------
$pubsql = "select * from tb_public where id='$_GET[id]'";
ログイン後にコピー
2 番目のものは同じではありませんかもの? ?
$query="select * from tb_tpsc where id=".$recid;
この文では、$recid はどこで定義されていますか? 定義されていない場合は、select * from tb_tpsc where id になります。 =
この SQL は間違っています。もちろんエラーは報告されます。