我有一个小型表单连接到我的数据库中的可选字段。这不是必需的。可选字段更新查询
如果您访问的页面上没有任何输入字段,它会给我一个$ gamername undefined。还访问页面时,它会自动显示“GameName Updated”的echo语句,当我甚至没有单击表单按钮时。如果我在窗体中放置了某些东西,它会将它的日期记录到数据库中,但它也不会回显该字段,除非我刷新页面,但随后将其重新提交。
<?php
if(isset($_SESSION['uid'])) {
$user_id = $_SESSION['uid'];
$sql = "SELECT * FROM users WHERE uid = '{$user_id}' ";
$result = query($sql);
while (($row = mysqli_fetch_assoc($result)) != false) {
$user_id = $row['uid'];
$gamename = $row['gamename'];
}
}
?>
<?php
function update_game_name(){
$user_id = $_SESSION['uid'];
$gamename = escape($_POST['gamename']);
$sql ="UPDATE users SET gamename='$gamename' WHERE uid='$user_id'";
$result = query($sql);
echo ('GameName Updated.');
}
?>
<div class="container no-scope-wrap">
<div class="row">
<div class="col-md-12">
<?php update_game_name(); ?>
<div class="no-scope-border">
<h2 class="form-field-title">Game Name</h2>
<form role="form" action="<?php $_SERVER['PHP_SELF'];?>" method="post">
<div class="form-group">
<label class="form-field-label">GameName</label>
<input class="form-control input-lg" id="name" name="gamename" type="text" placeholder="GameName" value="<?php echo $gamename;?>">
</div>
<button type="submit" name="update_game_name" id="btn" class="btn btn-default btn-lg">Update GameName</button>
</form>
</div>
</div>
</div>
</div>
Flgor它仍然不会在现场除非回声出值我重新访问该页面。 – Amoro
检查$ sql是否在创建变量后在某个parte中执行'echo $ sql'。在使用$ _SESSION之前检查会话是否打开 –
Flgor ok我添加了这个头文件(“Location:”。$ _SERVER ['REQUEST_URI']);它的作品,但更新时不会显示游戏名称更新回声 – Amoro