-2

ソーシャル ネットワークを書いているのですが、ニュースフィードに投稿が表示されると、プロフィール写真とライターの名前が表示されません。これが私のコードです:

$owner_id=mysql_result($result,$i,"post_owner_id"); //Post writer's user ID
$content=mysql_result($result,$i,"content"); //Content of the post
$date=mysql_result($result,$i,"date"); //Date
$time=mysql_result($result,$i,"time"); //Time
$poi_query=mysql_query("SELECT firstname, lastname, profile_picture FROM users WHERE id = '" . $owner_id . "'"); //MYSQL query to get the information of the post writer using user ID
$post_firstname=mysql_result($poi_query, 0, "firstname"); //Writer's first name
$post_lastname=mysql_result($poi_query, 0, "lastname"); //Writer's Last name
$post_profile_picture=mysql_result($poi_query, 0, "profile_picture"); //Writer's profile picture
?>

      <div class="post">
        <h1 class="post-title"><a href="profile.php?user=<?php echo $owner_id; ?>"> <?php echo $post_firstname; ?> <?php echo $post_lastname; ?></a></h1>
        <p class="content"><?php echo $content; ?></p>
        <p class="details"><?php echo $date; ?> at <?php echo $time; ?></p>
        <br/><hr/><br/>
      </div>

名前と画像以外はすべて問題なく動作します。何か助けはありますか?私はそれがpoi_queryに関係していることをほぼ確信しています...ところで、ユーザーIDを手動で入力すると、ターミナルですべてのコードが正常に機能します。

株式会社コンフィグ:

<?php

$hostname = 'localhost';        // Your MySQL hostname. Usualy named as 'localhost', so you're NOT necessary to change this even this script has already online on the internet.
 $dbname   = 'social-network'; // Your database name.
 $username = 'root';             // Your database username.
 $password = '********';                 // Your database password. If your database has no password, leave it empty.

// Let's connect to host
 mysql_connect($hostname, $username, $password) or DIE('Connection to host is failed, perhaps the service is down!');
 // Select the database
 mysql_select_db($dbname) or DIE('Database name is not available!');

?>
4

3 に答える 3

0

この行を変更します。

$poi_query=mysql_query("SELECT firstname, lastname, profile_picture FROM users WHERE id = '" . $owner_id . "'");

に:

$poi_query=mysql_query("SELECT firstname, lastname, profile_picture FROM users WHERE id = '" . $owner_id . "'") or die(mysql_error());

MySQLからのクエリに関するエラーメッセージを受信して​​いるかどうかを確認します。

編集:

ここでの問題は、割り当てmysql_close();を妨害していた呼び出しであることになります。$poi_query

于 2012-04-13T03:40:08.217 に答える
0

私が見ることができる唯一のことは、おそらくowner_idから引用符を削除することですか?

$poi_query=mysql_query("SELECT firstname, lastname, profile_picture FROM users WHERE id = " . $owner_id);
于 2012-04-13T03:35:05.697 に答える
-1

試す

$poi_query=mysql_query("SELECT firstname, lastname, profile_picture FROM users WHERE id = " . $owner_id) or die(mysql_error());

または、変数をダンプして、何が得られるかを確認してください

var_dump($poi_query);

これは、問題を絞り込むのに役立ちます

于 2012-04-13T03:42:53.133 に答える