0

こんにちは、誰か助けてください。私はユーザーのお気に入りをプロファイルにエコーアウトしています。スペースを節約するために、クエリをプロファイルページのユーザーのお気に入り/結果に 3 つに制限しています。

次に、ユーザーがクリックして、そのプロファイル ID に属するすべてのユーザーのお気に入りを別のページに表示できるハイパーリンクを配置しています。ユーザーがクリックしたリンクは、ユーザーの profile_id をエコーし​​、2 番目のクエリ 'get_user_favourites_more' は、ハイパーリンクしたばかりのプロファイルに属するすべてのお気に入りをエコーアウトする必要があります (リンクを介してエコーされた profile_id)。

mysql 関数からエコーされた結果が得られません。ページのタイトルに profile_id 番号を配置しているため、profile_id が正常にエコーされています。そのユーザーに属するお気に入りをエコーし​​ないだけです。

user_id に属するお気に入りを識別し、url から user_id を取得するように 2 番目の mysql クエリを設定する必要がありますか? (おもう?)

誰かが私が望むことを行うためにこれを取得する方法を教えてください。

mysql クエリ 1:

function get_favourites() {
            global $connection;
            global $profile_id;
            $query = "SELECT e.fav_id
                        FROM ptb_user_favourites e
                        WHERE e.user_id =\"$profile_id\"
                        AND e.approved = '1'
                        LIMIT 3";
                        $favourites_set = mysql_query($query, $connection);
            confirm_query($favourites_set);
            return $favourites_set;

        }

最初の 3 つの結果/ユーザーのお気に入りをリストするユーザー プロファイル:

<div class="prof-favourites-box2"><div class="show_more_favourites"><a href="show_all_favourites.php?to=<?php echo "$profile_id"; ?>">show all favourites ></a></div></div>
<?php
        $favourites_set = get_favourites();
        $duo_count = mysql_num_rows($favourites_set);
while ($fav = mysql_fetch_array($favourites_set)) {

    echo "<a href=\"profile.php?id={$fav['fav_id']}\"><img width=\"60px\" height=\"60px\" class=\"escort_duo_pic\" src=\"data/photos/{$fav['fav_id']}/_default.jpg\" /></a>";

すべてのお気に入り関数を表示/2 番目のクエリ:

function get_favourites_more() {
            global $connection;
            global $profile_id;
            $query = "SELECT e.fav_id
                        FROM ptb_user_favourites e
                        WHERE e.user_id =\"$profile_id\"
                        AND e.approved = '1'";
                        $get_favourites_more = mysql_query($query, $connection);
            confirm_query($get_favourites_more);
            return $get_favourites_more;

        }

my show all favorites page/ユーザーがユーザー プロファイルからリンクしているページ:

<?php
session_start();

if (isset ($_GET['to'])) {
$user_to_id = $_GET['to'];


}


if (!isset($_GET['to']))
    exit('No user specified.');

$user_id = $_GET['to']; ?>

<?php
        $favourites_more_set = get_favourites_more();
        while ($fav = mysql_fetch_array($favourites_more_set)) {
            $date = age_from_dob($fav['dob']);

            echo"
            <div class=\"boxgrid caption\">
            <a href=\"profile.php?id={$fav['id']}\"><img width=140px height= 180px src=\"data/photos/{$fav['id']}/_default.jpg\"/></a>
            <div class=\"cover boxcaption\">
            <h58> {$fav['display_name']}, ".$date."</h58>
            </div>
            </div>";
        }
    ?>
4

1 に答える 1

0

私が通常行うことは、ユーザーがログインするときに id を使用してセッションを設定することです。それを使用して、セッション = Session_id のようなすべてのユーザー関連の検索を実行します。

しかし、あなたの場合、URL のプロファイル ID が fav_id に設定されているようです。個人的には異例だと思いますが、 $profile_id = $_GET['to']; を実行することをお勧めします。URL を profile.php?user_id=$profile_id に設定

うまくいくかどうか教えてください。すみません、まだコメントを書き込めません。また、何かエラーが表示されていますか?

于 2013-02-13T04:17:52.187 に答える