-1

そのため、ユーザーからの入力を取得するフォームに関連する php ファイルに sql ステートメントがあります。あるジャンルに入ると、選択した特定のレコードではなく、その列のすべてのレコードが更新されます。

機能する元のステートメントはこの最初のコードですが、列全体を編集します。だから私は他の句を試していたので、album_id が一致するものだけが変更されましたが、運がありませんでした。 サンプル テーブル データ

$sql = "UPDATE album 
    SET genre_id = (SELECT genre_id
    FROM genre
    WHERE genreName='" . $_POST['lstGenre'] . "'
    )";

上記は私が始めたものであり、戻ってきています。 上記のコードの結果は、列全体でジャンルを変更します

$sql = "UPDATE album 
    SET genre_id = (SELECT genre_id
    FROM genre
    WHERE genreName='" . $_POST['lstGenre'] . "'
    )
        FROM album
        WHERE album_id='" . $_POST['album_id'] . "'";

これは私が試したバージョンの 1 つですが、何も更新されません。これは私が探しているものです: ケースごとに異なるジャンル

これは私が解決した作品です:

$sql = "UPDATE album 
        SET genre_id = (SELECT genre_id
        FROM genre
        WHERE genreName='" . $_POST['lstGenre'] . "'
        )
        FROM album
        WHERE album_id='" . $thisAlbum['album_id'] . "'";
4

2 に答える 2