此脚本显示用户输入的特定电子邮件地址的数据。
下面的代码片段在页面顶部的文本字段中显示数据,但我想在文本正文的文本字段中显示数据。
echo '<input name="login" type="text" value="' . $result['name'] . '>';
我在上面的代码中做了哪些更改才能让我这样做。
<?php
$host=""; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name="orders"; // Table name
$email = $_POST['textfield'];
$db = new PDO('mysql:host='.$host.
';dbname='.$db_name.
';charset=UTF-8',
$username, $password);
$stmt = $db->prepare('SELECT * FROM `orders` WHERE `email`=:email LIMIT 1');
$stmt->bindValue(':email', $email, PDO::PARAM_STR);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_ASSOC);
if($stmt->rowCount()>0)
{
echo '<input name="login" type="text" value="' . $result['name'] . '>';
}
else
{
echo "Email not found in the database!";
}
?>
形式:
<form id="form_53" name="login" action="test.php">
<input type="submit" value="Track">
<input type="text" username="textfield" value="">
<input type="text" name="name" value="<?php echo $result['name']?>"> //I want to display results here
</form>
答案 0 :(得分:2)
如果两个代码都存在于同一个文件中..这将起作用
<input type="text" name="name" value="<?php echo $result['name']?>">
如果你想检查是否有返回的行,你可以使用
<input type="text" name="name" value="<?php echo ($stmt->rowCount()>0) ? $result['name'] : "" ?>">
编辑了代码,以便您知道自己想要做什么
首先:替换此代码
if($stmt->rowCount()>0)
{
echo '<input name="login" type="text" value="' . $result['name'] . '>';
}
else
{
echo "Email not found in the database!";
}
保持$result = $stmt->fetch(PDO::FETCH_ASSOC);
和
if($stmt->rowCount()<=0) echo "Email not found in the database!";
第二:现在在HTML部分
<input type="text" name="name" value="<?php echo ($stmt->rowCount()>0) ? $result['name'] : "" ?>">
答案 1 :(得分:1)
只要您不破解$result
,您就可以:
<input type="text" name="name" value="<?php echo $result['name']; ?>"> //I want to display results here
答案 2 :(得分:0)
echo '<input name="login" type="text" value="' . $result['name'] . '">';
只需在echo
'字符串中添加双引号。
答案 3 :(得分:0)
这很容易实现。当然,请确保$ results数组包含在您正在处理的所需HTML页面的会话中。
<form id="form_53" name="login" action="test.php">
<input type="submit" value="Track">
<input type="text" username="textfield" value="">
<input type="text" name="name" value="<?php echo $results['name']?>"> //I want to display results here
</form>