使用PHP变量作为表单字段的默认值

时间:2014-12-17 20:12:11

标签: php html mysql

我创建了一个HTML表单,用户可以在其中注册并将数据输入到SQL数据库中。然后,我在网页中检索了这些数据,以便查看其个人资料。我创建了一个页面,用户可以通过创建一个表单来编辑该配置文件,该表单会更新SQL数据库中的用户ID值。

我希望表单使用SQL单元格的当前值作为该用户的默认值,以便更改更改。示例:当前用户7将其城市设置为纽约,当他们访问编辑信息页面时,表单中的城市字段已将纽约视为默认值。

获取SQL信息并将其分配给变量没有问题,我只是不明白如何将其设置为默认值。我知道你如何为输入字段设置默认值。

我的代码:

<?php
$id = $_SESSION["user_id"];    

// Create a query for the database
$query = "SELECT full_name FROM users WHERE id = $id LIMIT 1";

// Get a response from the database by sending the connection
// and the query
$response = @mysqli_query($dbc, $query);

// If the query executed properly proceed
if($response){
while($row = mysqli_fetch_array($response)){
echo $row['full_name'];   
echo mysqli_error();    
}
}
?>  
<input type="text" name="aboutme" defualt="<?php echo $row['aboutme'] ?>" >  

4 个答案:

答案 0 :(得分:2)

html输入没有default值。 输入可以使用属性value

<input type="text" name="some_name" value="Some value" /> 

在你的情况下,它是

<input type="text" name="aboutme" value="<?php echo $row['aboutme']?> /> 

输入也可以有placeholder - 输入中存在的某个值,但在用户开始编辑输入内容时会被删除:

<input type="text" name="aboutme" value="<?php echo $row['aboutme']?> placeholder="some value" /> 

答案 1 :(得分:0)

怎么样

<?php
$id = $_SESSION["user_id"];    

// Create a query for the database
$query = "SELECT full_name FROM users WHERE id = $id LIMIT 1";

// Get a response from the database by sending the connection
// and the query
$response = @mysqli_query($dbc, $query);

// If the query executed properly proceed
if($response){
while($row = mysqli_fetch_array($response)){
echo $row['full_name'];   
?>
<input type="text" name="aboutme" value="<?php echo $row['aboutme'] ?>" > 
<?php
echo mysqli_error();    
}
}
?>  

这是一个很好的例子http://www.w3schools.com/php/showphpfile.asp?filename=demo_db_select_pdo

答案 2 :(得分:0)

这两个答案都没有奏效,经过进一步的研究和试错,我创造了一个解决方案。

我将存储在数组中的值更改为普通的php变量:

$aboutme = $row['aboutme'];    

然后我使用以下代码调用该变量:

<input type="text" name="aboutme" value="<?php echo htmlspecialchars($aboutme); ?>" >

感谢您的帮助。

答案 3 :(得分:0)

希望我的回答对您有用。

为什么不尝试将其用作占位符?这将提供可编辑的文本。

<input type="text" name="aboutme" placeholder="<?php echo $row['aboutme'];" />