0

そのため、クライアントがWebサイトを更新するためのCMSを作成しようとしています。ニュースの更新スクリプトを機能させるための作業を行っていますが、ニュース自体だけでなくタイトルも更新するスクリプトを取得するにはどうすればよいか考えていました。スクリプトは次のとおりです。

PHP:

    //used to get data from previous page. $previous_title was so I can use it to set the where in the update query.
    if($_GET['title']) {
            $title = $_GET['title'];
             $previous_title = $_GET['title'];
    }
    if($_POST['title']) {
            $title = $_POST['title'];
            $news = $_POST['news'];

            //used to update both news and title
           mysql_query("UPDATE `News` SET `Title`='$title', `Content`='$news' WHERE `Title`='$previous_title'");
    header("Location: viewNews.php");
    }

HTML:

                <form id = "addNews" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                <input type="hidden" name="hidden" id="hidden" value="hidden" />
                <input type="text" name="title" size="68" id = "title" value="<?php echo $query['Title'];?>"/><br/><br/>
                <textarea name="news" id="news"><?php echo $query['Content'];?></textarea><br />
                <input type="submit" value="Update News"/>
                </form>

ありがとう!

4

1 に答える 1

0

更新クエリでは、両方のフィールドを更新していますTitle & Content

UPDATE `News` SET `Title`='$title', `Content`='$news' WHERE `Title`='$previous_title

ただし、ニュースのみを更新する場合は、SQL を次のようにします。

UPDATE `News` SET `Content`='$news' WHERE `Title`='$previous_title

$previous_title このコンテキストで$previous_titleは利用できない可能性があるため、注意する必要があります

if($_POST['title']) {
            $title = $_POST['title'];
            $news = $_POST['news'];

           mysql_query("UPDATE `News` SET `Title`='$title', `Content`='$news' WHERE `Title`='$previous_title'");
    header("Location: viewNews.php");
    }
于 2012-07-21T05:21:18.550 に答える