0

我试图让选择标签显示数据库中帖子的标题,这样我就可以单独选择它们并更新它们,而不是更新所有具有相同名称的标题。

所以我的问题是我无法让它工作,也许有人可以帮助我。

这就是我的意思-> https://imgur.com/a/ie1g4hF

如果您想要完整版,可以从我的 github 获取:

https://github.com/TwistedZebra/blog

那里的那个版本不包含选择标签,但使用文本框删除命名的帖子,但缺点是删除每个名称相同的帖子。

<?php 
    require 'config.php';


    if (isset($_POST['submit'])) {
        $updatetitle = $_POST['updatetitle'];
        $title = $_POST['title'];
        $content = $_POST['content'];

        if (empty($title) || empty($content)) {
            header('Location: update.php?=error');
            exit();
        } else {
            $updatedcontent = $connection->prepare('UPDATE posts SET title = :title , content = :content WHERE title = :updatetitle');
            $updatedcontent->execute(['title' => $title, 'content'=> $content, 'updatetitle' => $updatetitle]);
            header('Location: update.php?=success');
        }

    }
 ?>

 <!DOCTYPE html>
 <html>
 <head>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
    <link rel="stylesheet" type="text/css" href="public/css/main.css">
    <title>Control panel</title>
 </head>
 <body>

    <div class="navbar navbar-expand-lg navbar-dark  bg-dark">
        <div class="navbar-brand ">
            <h2>BloggerWorld</h2>
        </div>
        <ul class="nav">
            <li class="nav-item">
                <a class="nav-link" href="public/index.php">Home</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="public/posts.php">Posts</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="adminpanel.php">Admin Panel</a>
            </li>
        </ul>
    </div>
    <br><br><br><br><br><br><br>
    <div class="container-fluid">
        <div class="container">
            <h1>Update post</h1>
            <form method="post" action="update.php" >

                <select name="delTitle" class="form-control">
                    <?php foreach ($updatedcontent as $update) { ?>
                    <option><?php echo $post['title'];  ?></option>;
                    <?php } ?>
                </select>

                <br>
                <input type="text" name="title" class="form-control" placeholder="New title" >
                <br>
                <textarea name="content" rows="5" cols="60"  class="form-control" placeholder="Enter post"></textarea>
                <br>
                <br>
                <button type="submit" name="submit" class="btn btn-success">Update post</button>
            </form>
        </div>
    </div>


 <script>
  document.write('<script src="http://' + (location.host || 'localhost').split(':')[0] +
  ':35729/livereload.js?snipver=1"></' + 'script>')
</script> enter code here
 </body>
 </html>
4

0 回答 0