loadContent()
呼び出されたときにデータベースにクエリを実行し、データをフォーマットして結果を返す関数があります。これは非常に原始的な CMS を構築するために使用されており、この関数はデータベースから記事をロードするために使用されています。
関数は次のとおりです。
$articles = mysql_query("SELECT `id`, `name`, `content`, `keywords`, `description`, `access_level` FROM `tb_articles` WHERE `page_id`='$pageID'");
if(!$articles){
die('Error!: ' . mysql_error());
}
while($arts = mysql_fetch_assoc($articles)){
$content .= '<div class="article" id="art-' . $arts['id'] . '">';
$content .= '<h1>' . $arts['name'] . '</h1>';
$content .= $arts['content'];
$content .= '</div>';
}
return $content;
}else{
私の問題は、何も返されないことです。SQL が検証され、2 つの行が返されます。ループ内のすべてをコメントアウトして行を追加し$content .= 'test';
、return ステートメントを に変更するecho $content;
と、関数は "test" を 2 回正常にエコーしました。それで、私がしたことの何が問題なのですか?
私を助けてくれてありがとう、私はPHPにかなり慣れていません。
アップデート:
投稿はすべての有効な変更を表すようになりました。
私はどこかに行きましたvar_dump
。ステートメント$content
の直前にダンプしました。return
データベース内のすべての記事 (そのうちの 2 つ) が の中に表示されましたstring(2445) ""
。これにより、クエリに問題がないことが確認されます。私は今、return ステートメントと関係があると考えています。