使用php使用mysql数据填充html表单
我试图用从mysql数据库接收的数据填充html表单。但是,我无法将表单设置为在加载时显示从数据库提取的变量。我希望加载的表单保存上次输入到表单中的数据,这些数据以前已添加到数据库中使用php使用mysql数据填充html表单,php,html,mysql,database,webserver,Php,Html,Mysql,Database,Webserver,我试图用从mysql数据库接收的数据填充html表单。但是,我无法将表单设置为在加载时显示从数据库提取的变量。我希望加载的表单保存上次输入到表单中的数据,这些数据以前已添加到数据库中 $query = "SELECT FROM character_tbl WHERE character_player ='".$_SESSION["user"]."' character_tbl"; $result = mysql_query($query); while($row = mysq
$query = "SELECT FROM character_tbl WHERE character_player
='".$_SESSION["user"]."' character_tbl";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)){
$name = $row['character_name'];
$race = $row['character_race'];
$class = $row['character_class'];
$alignment = $row['character_alignment'];
$hp = $row['character_hp'];
$str = $row['character_str'];
$dex = $row['character_dex'];
$con = $row['character_con'];
$int = $row['character_int'];
$wis = $row['character_wis'];
$cha = $row['character_cha'];
$ac = $row['character_ac'];
$touch = $row['character_touch'];
$flat = $row['character_flat'];
$fort = $row['character_fort'];
$ref = $row['character_ref'];
$will = $row['character_will'];
}
echo $will;
mysql_close();
?>
<!DOCTYPE html>
<html>
<body>
<div id="nav">
<form action="user.php">
<input type="submit" value="Back">
</form>
</div>
<div id="section">
<form action="update.php" method="POST">
Character Name:<br>
<input type="text" name="name" value="<?php echo $name;?>">
<br>
Race<br>
<input type="text" name="race" value="<?php echo $race;?>">
<br>
Class<br>
<input type="text" name="class" value="<?php echo $class;?>">
<br>
Alignment<br>
<input type="text" name="alignment" value="<?php echo $alignment;?>">
<br>
HP<br>
<input type="text" name="hp" value="<?php echo $hp;?>">
<br>
STR<br>
<input type="number" name="str" value="<?php echo $str;?>">
<br>
DEX<br>
<input type="number" name="dex" value="<?php echo $dex;?>">
<br>
CON<br>
<input type="text" name="con" value="<?php echo $con;?>">
<br>
INT<br>
<input type="text" name="int" value="<?php echo $int;?>">
<br>
WIS<br>
<input type="text" name="wis" value="<?php echo $wis;?>">
<br>
CHA<br>
<input type="text" name="cha" value="<?php echo $cha;?>">
<br>
AC<br>
<input type="text" name="ac" value="<?php echo $ac;?>">
<br>
Touch AC<br>
<input type="text" name="touch" value="<?php echo $touch;?>">
<br>
Flat-Footed AC<br>
<input type="text" name="flat" value="<?php echo $flat;?>">
<br>
Fortitude<br>
<input type="text" name="fort" value="<?php echo $fort;?>">
<br>
Reflex<br>
<input type="text" name="ref" value="<?php echo $ref;?>">
<br>
Will<br>
<input type="text" name="will" value="<?php echo $will;?>">
</br>
<input type="submit" value="Update">
</form>
$query=“从角色中选择角色”
='“$”会话[“用户”]。“'character\u tbl”;
$result=mysql\u query($query);
而($row=mysql\u fetch\u数组($result)){
$name=$row['character_name'];
$race=$row['character_race'];
$class=$row['character_class'];
$alignment=$row['character_alignment'];
$hp=$row['character_hp'];
$str=$row['character_str'];
$dex=$row['character_dex'];
$con=$row['character_con'];
$int=$row['character_int'];
$wis=$row['character_-wis'];
$cha=$row['character_cha'];
$ac=$row['character_ac'];
$touch=$row['character_touch'];
$flat=$row['character_flat'];
$fort=$row['character_fort'];
$ref=$row['character\u ref'];
$will=$row['character_will'];
}
回音$will;
mysql_close();
?>
字符名:
您的mysql查询中存在语法错误。您没有为所有要提取的列放置字段或列名称或(*
)
像这样试试
$query = "SELECT * FROM character_tbl WHERE character_player ='".$_SESSION['user']."'";
我认为SQL有错误:
SELECT FROM character_tbl WHERE character_player
尝试:
意识到您的变量将具有forloop的最后一个值对不起,我不太明白,展开?假设mysql\u fetch\u array($result)
有3行,当您这样做时:while($row=mysql\u fetch\u array($result)){$name=$row['character\u name'];…
变量$name
获取$row的值['character\u name']
3次,并且它们相互覆盖,因此,最终您将只得到last的值(这里是第3次)行。但它应该只获取一行,因为我设置了只有一个用户可以在其会话名称中有一个条目。在这种情况下,是的,但作为一种常规做法,请注意:)。顺便说一句,我个人还不太明白您的问题是什么。对我来说,is页面是令人耳目一新的,您自然失去了以前的值这仍然存在esn没有很遗憾地解决这个问题。请使用“while($row=mysql\u fetch\u assoc($result)){”而不是“while($row=mysql\u fetch\u array($result)){”-----请参阅,您可以使用var\u dump($row);退出;要确认数据正确,我在执行var\u dump时得到NULL,这是否意味着我插入数据有问题?请在while($row=mysql\u fetch\u assoc)下使用var\u dump($result)){?var_dump($row)和echo$_SESSION[“user”]的输出是什么;是否检查值是否在$_SESSION[“user”]中设置?打印并查看查询echo$query;只需将SESSION_start();放在php标记start之后的顶部,然后检查echo$_SESSION[“user”];是否显示其值。
SELECT * FROM character_tbl WHERE character_player