-1

同じタイプのエラーを参照するいくつかの解決済みの質問を見つけましたが、それらは実際には問題を解決しません。

私は MySQL の専門家ではありませんが、次のレベルに移行して映画のスケジュールを作成しようとしています。

MySQL データベースから結果を取得しようとしていますが、PHP から期待される結果が得られませんが、PHPMyAdmin の SQL ブラウザーで正しい結果を取得しています。

これはデータベース構造です:

flm_schedulechart

s_id    m_id    t_id    room    day     time           status
1       1       1       5       0       16:30:00       1
2       1       3       2       0       13:30:00       0
3       1       3       2       1       13:30:00       1

flm_movietheaters_profiles

t_id    name
1       Theater 1   
3       Theater 2

PHPMyAdminのSQLブラウザでこのSQL文を実行するかどうかはわかります...

SELECT s.s_id as 'show_id', t.name as 'theater', s.room as 'room', s.day as 'day', s.time 'time', s.status
FROM flm_schedulechart AS s
JOIN flm_movietheaters_profiles AS t
ON s.t_id = t.t_id
WHERE s.m_id=1
ORDER BY t.name

以下を取得します。

show_id    theater      room    day   time        status
1          Theater 1    5       0     16:30:00    1 
2          Theater 2    2       0     13:30:00    0
3          Theater 2    2       1     13:30:00    1

このPHPコードを使用すると...

これらは私のPHP関数です:

function getCurrentShowingsByMovieId($con, $movie_id) {
    $result = mysqli_query( $con, "
    SELECT s.s_id as 'show_id', t.name as 'theater', s.room as 'room', s.day as 'day', s.time 'time', s.status
    FROM flm_schedulechart AS s
    JOIN flm_movietheaters_profiles AS t
    ON s.t_id = t.t_id
    WHERE s.m_id=$movie_id
    ORDER BY t.name" );
    return $result;
}

if( isset($_GET['mid']) ) {
    $r = getCurrentShowingsByMovieId( $con, $_GET['mid'] );
    $r = mysqli_fetch_assoc( $r );
}

var_dump($r);

最初の結果のみを取得します。

array(6) {
["show_id"]=>
string(1) "1"
["theater"]=>
string(16) "Theater 1"
["room"]=>
string(1) "5"
["day"]=>
string(1) "0"
["time"]=>
string(8) "16:30:00"
["status"]=>
string(1) "1"
}

これが十分に明確であることを願っています:)

前もって感謝します!

4

1 に答える 1

0

結果をループする必要があります。

if( isset($_GET['mid']) ) {
    $r = getCurrentShowingsByMovieId( $con, $_GET['mid'] );
    while($row = mysqli_fetch_assoc($r)) {
        echo "<pre>" . print_r($row,1) . "</pre>";
    }
}
于 2013-08-20T12:17:26.627 に答える