私はPHPの初心者ですが、フォーラムでプロジェクトを試みています。しかし、私は問題に遭遇しました。
$getLatest = dbquery("SELECT * FROM site_forum_thread_comments,site_forum_threads,site_forum_subs WHERE site_forum_thread_comments.thread_id=site_forum_threads.thread_id AND
site_forum_threads.sub_id=site_forum_subs.sub_id AND
site_forum_subs.main_id='".$forum['ID']."'
ORDER BY site_forum_thread_comments.timestamp DESC LIMIT 1");
while ($latest = mysql_fetch_assoc($getLatest))
{
$getUser = dbquery("SELECT * FROM users WHERE id='".$latest['user_comment_id']."'");
while ($user = mysql_fetch_assoc($getUser))
{
echo ' <BR>Latest Post: '.$latest['comment'].'
<BR>User: '.$user['username'].'
<BR>Forum: '.substr($latest['site_forum_threads.title'],0,20).'...';
}
}
これはコードのほんの一部です。$ getLatestは、データベース内のさまざまなテーブルからのSQLクエリからコードを取得します。私の問題:最後の部分でフォーラム'.substry($ latest ['... blahblahblah']
テーブル関数を追加できますか?だから私はそれをしたようにsite_forum_threadsから列「タイトル」を取得することができますか?私の他のテーブルの1つには、「テーブル」と呼ばれる列もあり、クエリは、データを取得する必要がある列の間で混同されているためです。
前もって感謝します!
編集:@zerkms
$getLatest = dbquery("SELECT * FROM site_forum_thread_comments,site_forum_threads,site_forum_subs
site_forum_threads.title AS title_from_site_forum_threads
WHERE site_forum_thread_comments.thread_id=site_forum_threads.thread_id AND
site_forum_threads.sub_id=site_forum_subs.sub_id AND
site_forum_subs.main_id='".$forum['ID']."' AND
side_forum_threads.title= title_from_site_forum_threads
ORDER BY site_forum_thread_comments.timestamp DESC LIMIT 1");
while ($latest = mysql_fetch_assoc($getLatest))
{
$getUser = dbquery("SELECT * FROM users WHERE id='".$latest['user_comment_id']."'");
while ($user = mysql_fetch_assoc($getUser))
{
echo ' <BR>Latest Post: '.$latest['comment'].'
<BR>User: '.$user['username'].'
<BR>Forum: '.substr($latest['title_from_site_forum_threads'],0,20).'...';
}
}