[英]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个回调: success
, complete
, error
。
无论成功或错误回调之后执行什么操作,都会始终触发完成事件。 在成功回调中,您可以返回请求的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
您可能有一个触发按钮
单击按钮,启动ajax请求(例如:使用jQuery ajax )请求数据库数据,这些数据由PHP代码返回。
如果请求成功,则将返回的数据放入HTML元素。
document.getElementById("ElementID").innerHTML = "Data return by PHP!";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.