【发布时间】:2018-06-15 20:23:47
【问题描述】:
我制作了一个带有 2 个输入的表单,一个是文本,另一个是隐藏的,用于存储我的变量值。然后我用 post 方法编写了一个 jquery 脚本,将值传递给另一个 php 文件,该文件将值插入数据库,但只插入来自文本输入的值,来自隐藏输入的值不起作用。 以下是表单和 jquery 脚本:
<?php
include_once('header.php');
$uid = $_GET['uid'];
echo $uid;
[enter image description here][1]?>
<form>
<input name="usermsg" type="text" id="usermsg" size="63" />
<input type="hidden" name="uid" value="<?php echo $uid; ?>">
<input name="submitmsg" type="submit" id="submitmsg" value="Send" />
</form>
$(document).ready(function () {
$("#submitmsg").click(function () {
var clientmsg = $("#usermsg").val();
var clientid = $("#uid").val();
$.post("includes/postchat.php", {text: clientmsg,uid: clientid});
$("#usermsg").attr("value", "");
return false;
});
这里是 postchat.php 文件:
if (isset($_SESSION['u_uid'])) {
include('dbh-inc.php');
$text = mysqli_real_escape_string($conn, $_POST['text']);
$uid = $_POST['uid'];
$date_current = date("Y-m-d H:i:s");
$user = $_SESSION['u_uid'];
if ($user = 'one') {
if ($text != '') {
$sql = "INSERT INTO messages (body, user_from, date_sent, user_to) VALUES (
'$text',
'$user',
'$date_current',
'$uid'
)";
mysqli_query($conn, $sql);
}
提交后我在数据库中的表:
【问题讨论】:
-
var clientid = $("#uid").val();引用的ID为“uid”的元素不存在