繁体   English   中英

如何更改HTML的 <p> 从PHP内部文本?

[英]How to change html's <p> inner text from PHP?

我正在尝试从PHP更改HTML元素的内部文本。这甚至可能吗? 我正在为我的网站构建一个聊天应用程序(实时聊天),我需要通过查询数据库来不断更新聊天,但是我一直坚持获取元素并从PHP的HTML更改其内部文本。 提前致谢。

<?php
if (isset($_POST['iChat'])){
    $db_address = 'localhost';
    $db_username = 'root';
    $db_password = '';
    $db_name = 'chat';
    $connection = mysqli_connect($db_address, $db_username, $db_password, $db_name);
    $message = $_POST['iChat'];
    $personaname = $_COOKIE['personaname'];

    if ($message != '' && $personaname != ''){
        $query = "INSERT INTO chat VALUES (null, '{$personaname}', '{$message}')";
    mysqli_query($connection, $query);
    }
}

function get(){
    $db_address = 'localhost';
    $db_username = 'root';
    $db_password = '';
    $db_name = 'chat';
    $connection = mysqli_connect($db_address, $db_username, $db_password,     $db_name);
    $query = "SELECT `sender`, `message` FROM chat";
    $result = mysqli_query($connection, $query);

    >>>> GET ELEMENT HERE <<<<<<

    return json_encode($result);
}
?>

要在网站的任何元素,任何时间或任何位置更改内容,最简单也是最好的方法是Ajax请求。

使用ajax请求,您基本上可以将帖子发送或到达服务器的任何给定URL。

您还可以传递数据(变量/对象)。 这样,您可以将任何用户生成的数据发送到服务器并对其进行处理。 (例如输入字段)。

发出请求后,您将获得3个回调: successcompleteerror

无论成功或错误回调之后执行什么操作,都会始终触发完成事件。 在成功回调中,您可以返回请求的result (从php文件返回的值)。

error回调中,您可以通知用户出了点问题,例如,请求以错误的请求或错误的网关或超时,404/503等响应。

可以在此处找到更多信息,包括一些其他有用的功能): http : //api.jquery.com/category/ajax/

示例代码:

jQuery(document).ready(function($){
    $.ajax({
        url: '?act=process',
        type: 'post',
        data: {
            id: $id,
            name:$name,
            description:$description
        },
        success: function (result) {
            $('.alert-success').show();
            console.log('Yay it worked');
        },
        error: function (xhr, ajaxOptions, thrownError) {
            $('.alert-danger').show();
            console.log('Something went wrong');
        }
    });
});

我想您正在寻找Ajax

  1. 您可能有一个触发按钮

  2. 单击按钮,启动ajax请求(例如:使用jQuery ajax )请求数据库数据,这些数据由PHP代码返回。

  3. 如果请求成功,则将返回的数据放入HTML元素。

     document.getElementById("ElementID").innerHTML = "Data return by PHP!"; 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM