php 实时表单提交

让我解释一下我想要什么。


我想在输入时使用 db add 在列表中添加一个值,而无需更改页面form,然后单击submit。


但是在这段代码中,我必须再刷新一次才能添加,并且一次也添加了两次。


我怎样才能做到这一点?


<?php

    $conn = mysqli_connect('127.0.0.1','MYID','MYPASS','MYDB');

    $sql = "SELECT * FROM MYTABLE";

    $rs = mysqli_query($conn, $sql);


    $list = '';

    while($row = mysqli_fetch_array($rs)) {

            $list = $list."<li><a href=\"index.php?id={$row['id']}\">{$row['title']}</a></li>";

    }


    $article = array(

        'title' => 'Welcome!',

        'description' => 'Hello, Web!'

    );


    if (isset($_GET['id'])){

        $filtered_id = mysqli_real_escape_string($conn, $_GET['id']);


        $sql = "SELECT * FROM topic WHERE id={$filtered_id}";

        $rs = mysqli_query($conn, $sql);

        $row = mysqli_fetch_array($rs);

        $article['title'] = $row['title'];

        $article['description'] = $row['description'];

    }


    if ($_POST['title'] != null){

        $sql_in = "INSERT INTO topic (title, description, created) VALUES ('{$_POST['title']}', '{$_POST['description']}', NOW())";


        $rs_in = mysqli_query($conn, $sql_in);


        if ($rs_in === false) {

                $msg = mysqli_error($conn);

        } else {

                $msg = 'Success.';

        }

    } else {

        $msg = 'Fill in';

    }

?>


开满天机
浏览 98回答 1
1回答

手掌心

在 php 中,实时不是一件事,但有一种解决方法,您可以使用推送器https://pusher.com/docs之类的事件服务并立即在客户端接收事件。还有其他网站提供此功能,因此在选择它们之前进行搜索,您也可以随时在 node.js、c#、go 中构建您的事件服务器
打开App,查看更多内容
随时随地看视频慕课网APP