在php中回显到文本框

在php中回显到文本框,php,Php,我正在尝试做一些简单的事情来学习如何进行查询,然后将答案放入一个框中。我有一个如下所示的HTML文件: <html> <head> <title>Test</title> </head> <body> <form action="results.php" method="post">Search: <input name="term" type="text" /><br /> &l

我正在尝试做一些简单的事情来学习如何进行查询,然后将答案放入一个框中。我有一个如下所示的HTML文件:

<html>
<head>
<title>Test</title>
</head>
<body>
<form action="results.php" method="post">Search: <input name="term" type="text" /><br />    
<input name="submit" value="Submit" type="submit" />
<p>Answer: <input name="answer" type="text" /></p>
</form>
</body>
</html>

试验
搜索:
答复:

php代码是:

<?php
$hostname = 'host.com';
$username = 'ratetable';
$password = 'mypassword';
$term = (int) $_GET['term'];

try 
{
   $db = new PDO("mysql:host=$hostname;dbname=ratetable", $username, $password);
   //echo 'Connected to database<br />';

   foreach($db->query('SELECT * FROM rates WHERE mileage<= ' . $term . ' ORDER BY mileage DESC LIMIT 1') as $row) {
       echo "<input type='text' name='answer' value='" . $row['ratepermile'] . "'>";
   }
}         
catch (PDOException $e) {
       echo $e->getMessage();
       throw($e);
   }
?>

您的表单正在
发布数据(
method=“POST”
),但您的PHP脚本正在查看
$\u GET
aray

您需要从
$\u POST
获取数据

$term = (int) $_POST['term'];

您的表单正在
POST
ing数据(
method=“POST”
),但您的PHP脚本正在查看
$\u GET
aray

您需要从
$\u POST
获取数据

$term = (int) $_POST['term'];

以及上面的帖子。如果您希望将表单保留在页面上,而不重新加载页面,则需要查看。

以及上述文章。如果希望将表单保留在页面上,而不重新加载需要查看的页面。

可以使用$\u请求来避免这些混淆。无论您使用method=“post”还是method=“get”,您都可以通过此方法获取值。

您可以使用$\u请求来避免这些混淆。无论你使用method=“post”还是method=“get”,你都可以通过这个获取值。

所以你会得到一个空白页?你的表单使用的是
method=“post”
,但是你的PHP正在查看
$\u get['term']
。正如@RocketHazmat所说的,你需要查找post参数而不是get,理想情况下,在这种情况下,您应该记录每一步调试的结果。特别是如果您的查询返回了任何行等,请查看您的Web服务器错误日志,看看是否有异常情况。@Jeffrey,答案框出现在第二页,但我希望表单保持在屏幕上。因此您得到一个空白页?您的表单使用的是
method=“post”
,但您的PHP正在查看
$\u get['term']
。正如@RocketHazmat所说,您需要查找POST参数而不是GET,理想情况下,在这种情况下,您应该记录在调试的每个步骤中获得的内容。特别是如果您的查询返回了任何行等,请查看您的Web服务器错误日志,看看是否有异常情况。@Jeffrey,答案框出现在第二页,但我希望表单保持在屏幕上。哦,伙计,我想它需要获取,因为POST lol。表单消失,只显示答案框,但不是输入和提交。我怎样才能稳定下来?我之前试过用div做一些事情(在提交按钮下),但我认为我做得不对。比如:(要回显的文本框)@Shawn:当你提交表单时,你实际上是在导航到一个新页面。如果你不想这样,那就看看用AJAX发布表单吧。哦,天哪,我想它需要GET,因为POST lol。表单消失了,只显示答案框,而不显示输入和提交。我怎样才能稳定下来?我之前试过用div做一些事情(在提交按钮下),但我认为我做得不对。比如:(要回显的文本框)@Shawn:当你提交表单时,你实际上是在导航到一个新页面。如果您不想这样做,可以考虑使用AJAX发布表单。