0

現在構築中の Web サイト用の CMS を構築しようとしていますが、データベースに保存された記事を編集できるようにする必要があります。私が直面している問題はquery、入力のすべての記事フィールドの値を選択するステートメント 1 と、カテゴリ テーブルからすべてを選択するステートメント 1 がたくさんあることです (オプションにあるすべてのカテゴリを含む選択ドロップダウンの場合)。 、カテゴリからすべてのレコードを取得し、art_id を持つレコードのみを取得する最良の方法は、URL を介して渡すものに = です。

テーブルのカテゴリ

cat_id  cat_name
1       soccer
2       baseball
3       basketball

テーブル記事

art_id art_cat_id art_title
1      1          lorem

HTML/PHP

<?php
 $sql_articles = "SELECT art_id, art_cat_id, art_title, cat_id, cat_name
                FROM app_articles LEFT JOIN app_categories
                ON app_articles.art_cat_id = app_categories.cat_id
                WHERE art_id =".$_GET['art_id']; 

$result = query($sql_articles);
if($result===false) {
    echo("query failed");
}
else {
    $row = mysqli_fetch_array($result)              
?>

<form id="articles" action="" method="post">

<input type="text" name="title" value="<?php echo $row['art_title']; ?>">

<select name="category">
    <option value="<?php echo $row['art_cat_id'] ?>" selected="selected">
            <?php echo $row['cat_name'] ?>
    </option>
    <?php
    $sql_categories = "SELECT cat_id, cat_name FROM app_categories";

    $result = query($sql_categories);

    if($result===false) {
            echo("Query Fail");
    }
    else {
        while( $data = mysqli_fetch_array($result)) {
            if ($row['art_cat_id'] == $data['cat_id']) continue;
    ?>     
            <option value="<?php echo $data['cat_id'] ?>">
                    <?php echo $data['cat_name'] ?>
             </option>
    <?php
        }
    }
?>
</select>

<input type="submit" value="Save">
</form>
<?php
    }
?>

私が求めているのは、次のようなものを返すSQLステートメントを実行できるかということだと思います

art_id  art_cat_id  art_title  art_slug  art_company cat_id  cat_name
1       1           lorem      lorem     lorem       1       soccer
                                                     2       baseball
                                                     3       basketball

だから私ができることは1つのステートメントです。

4

1 に答える 1