使用PHP填充HTML文本框值

时间:2012-06-05 10:36:25

标签: php html

好的,所以我过去两天一直在学习PHP,所以请光临我,我试图用$ Firstname填充html文本框值

但我一直得到HTTP 500内部服务器错误,插入php部分工作正常,

这是我的PHP代码我试图设置的框是在底部

<?php
$Firstname = $_POST['Fname'];
$Surname = $_POST['Lname'];
$UserName = $_POST['UName'];
$Password = $_POST['Password'];

$Valid = mysql_connect('localhost' , 'root' , 'pword');

if(!$Valid) 
{
    echo 'Could not connect' . mysql_error();
}
else
{
    mysql_select_db('accounts', $Valid) or die('could not select database');

    $query = "INSERT INTO `users` (`UserName`, `Password`, `FirstName`, `Surname`) VALUES ('".$UserName."' , '".$Password."' , '".$Firstname."' , '".$Surname."')";  

    mysql_query($query, $Valid) or die('Error Adding the users details.');

    echo "The following user " . $Firstname . " has been added to the database";
}

<html>
<body>
<input type="text" name="UName" size="30" value=<?php echo htmlentities($Firstname); ?>/><br/>


</body>
</html>
?> 

<?php $Firstname = $_POST['Fname']; $Surname = $_POST['Lname']; $UserName = $_POST['UName']; $Password = $_POST['Password']; $Valid = mysql_connect('localhost' , 'root' , 'pword'); if(!$Valid) { echo 'Could not connect' . mysql_error(); } else { mysql_select_db('accounts', $Valid) or die('could not select database'); $query = "INSERT INTO `users` (`UserName`, `Password`, `FirstName`, `Surname`) VALUES ('".$UserName."' , '".$Password."' , '".$Firstname."' , '".$Surname."')"; mysql_query($query, $Valid) or die('Error Adding the users details.'); echo "The following user " . $Firstname . " has been added to the database"; } <html> <body> <input type="text" name="UName" size="30" value=<?php echo htmlentities($Firstname); ?>/><br/> </body> </html> ?>

我不确定我做错了什么,但如果有人可以指出我正确的方向或给我一个解决方案我会很感激,再次iv只是在过去两天学习PHP。

8 个答案:

答案 0 :(得分:4)

从结尾移除?>并将其放在<html>

之前

答案 1 :(得分:2)

除了之前的答案,我建议你应该确保在你的开发环境中将error_reporting设置为E_ALL并将display_errors设置为ON。这将帮助您获得比简单的HTTP 500更详细的错误消息。

欢呼:)

答案 2 :(得分:0)

我认为您的代码没有任何问题。但你试试这个

<input type="text" name="UName" size="30" value="<?php echo $Firstname; ?>" />

答案 3 :(得分:0)

您的代码可能在某处出错。我似乎无法在您的示例代码中找到它。

顺便说一句,在这种情况下回显单个值的良好做法可以是:

<input type="text" name="UName" size="30" value="<?=$Firstname?>" /> 

答案 4 :(得分:0)

我注意到的第一件事就是这个,

您忘了在

中附上您的php注入内容
<input type="text" name="UName" size="30" value="<?php echo htmlentities($Firstname); ?>"/><br/>

答案 5 :(得分:0)

而不是:

...
    echo "The following user " . $Firstname . " has been added to the database";
}

<html>
<body>
....
?>

尝试:

...
    echo "The following user " . $Firstname . " has been added to the database";
}
?>   <!-- add ?> -->
<html>
<body>
....
(delete ?>)

答案 6 :(得分:0)

错误500来自Apache服务器,它不涉及PHP。如果你有任何变化,我认为你需要对你的htaccess进行更改! 尝试重新启动服务器,查看结果,或者甚至更好地检查/var/log/

中的apache错误日志

答案 7 :(得分:0)

对我来说非常宝贵的一个网站是: http://phpcodechecker.com/

您可以粘贴一行或整个文件,然后单击“分析”按钮。它会告诉你PHP解析器不喜欢什么,包括一些警告。非常方便找到丢失的')'和类似的错误,不会弹出。