私は PHP に比較的慣れていないので、自分が何をしているのかわからないように聞こえる場合は、ご容赦ください。それは真実からそう遠くないからです。また、私のコードがばかげているように見えるか、単純化される可能性があること、または他にもっと簡単な方法があることを認識していますが、まだ興味がありません。私はそれを機能させたいので、そこから単純化します。いずれかの方法..
データベースの「poems」というテーブルにアクセスするページを作成しています。ページの片面はデータベースから呼び出された詩が表示される実際の場所で、もう片面 (「ナビゲーション」と呼びます) はデータベースからの詩のリストです。このテーブルには、order、Title、および Poem という 3 つの特定のフィールドがあります。
ナビ側はすべての情報を適切に引き出します。order と Title を読み取り、それらを Title で読み取り、poems.php/?p=# に誘導するリンクにフォーマットします。ここで、# はテーブルの特定の行の「順序」です。
実際のコンテンツ側はそれほど幸運ではありません。URL から # を取得するために $_GET を使用することになっています。その情報を使用して、タイトルと詩を引き出して、2 つの内容を表示しようとしています。単純に聞こえますが、非常に長い間、「mysql_fetch_assoc() はパラメーター 1 がリソースであり、ブール値が指定されていることを期待しています」というメッセージしか得られませんでした。ご覧のとおり、SELECT / FROM / WHEREの語順を一重引用符で囲むことで最終的に解決しましたが、今では何も返されません..または少なくとも、印刷またはエコーしようとすると何も表示されません. 私は非常に多くの異なることを試しましたが、何も意味がありません。他の同様の質問が示唆していて、人々が彼らのために働くと言っているとしても、私にはうまくいきません.
`
$page = $_GET["p"];
echo $page;
$qry = mysql_query("SELECT * FROM poems WHERE 'order'='$page'");
while ($row = mysql_fetch_array($qry)) {
$title = $row['Title'];
$poem = $row['Poem'];
}
print $title;
print $poem;
?>
</td>
<td id="poemssidebar">
<?PHP
$url = "SELECT * FROM poems";
$result = mysql_query($url);
while ($db_field = mysql_fetch_assoc($result) ) {
print
"<a href=poems.php?p=" .
$db_field['order'] .
">" .
$db_field['Title'] .
"</a><BR><BR>";
}
?>
</td>`
「echo $page」はちょうどそこにあるので、適切に機能するまで何らかの結果が表示されます。テーブルで使用可能な 2 つのエントリの間をクリックすると、1 または 2 が表示されますが、それだけです。print $title と print $poem は何もくれません。ヘルプ!