私は、クエリを実行する方法を学び、答えをボックスに入れるための簡単なことをしようとしています。次のような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);
}
?>
そのため、データベースのフィールドであるratepermileを「answer」テキストボックスに入れようとしています。「データベースに接続されています」エコー行をコメントアウトし、データベースに存在することがわかっているものを使用した後でも、画面はクリアされますが、フォームも結果も表示されません。
フォームを画面に表示したままテキストボックスにエコーするにはどうすればよいですか?
見てくれてありがとう。