Php 回显到文本框-接收意外的T_封装的_和_空格,应为T_字符串或T_变量或T_NUM_字符串

Php 回显到文本框-接收意外的T_封装的_和_空格,应为T_字符串或T_变量或T_NUM_字符串,php,Php,可能重复: 你好 我有一个html表单,它有一个输入框、一个提交按钮和一个结果框。在提交时,输入被发送到php文件,在该文件中执行查询,我试图将数据库中的一个字段回显到结果框中,我在表单中称之为“应答” 这是我的php文件: <?php $hostname = 'myhost.com'; $username = 'ratetable'; $password = 'mypassword'; $term = (int) $_GET['term']; try { $dbh = new

可能重复:

你好

我有一个html表单,它有一个输入框、一个提交按钮和一个结果框。在提交时,输入被发送到php文件,在该文件中执行查询,我试图将数据库中的一个字段回显到结果框中,我在表单中称之为“应答”

这是我的php文件:

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

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

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

?>

您的引号不匹配

foreach($db->query('SELECT * FROM rates WHERE mileage<= ' . $term . ' DESC LIMIT 1') as $row) {
foreach($db->query('SELECT*FROM rates,其中里程替换为:

foreach($db->query("SELECT * FROM rates WHERE mileage<='".$term."' DESC LIMIT 1") as $row) {
  echo "<input type='text' name='answer' value='".$row['ratepermile']."'>";
}
试用后{ }


希望这能对您有所帮助!

具体回答如下:嗨,迈克,我现在在我的行中看到“致命错误:对非对象调用成员函数query()”,该行现在是:foreach($db->query(“从以下位置选择*”mileage@Shawn你发布的代码中没有这一点。我不会为你调试所有东西。人们已经给了你理解错误以及如何修复错误所需的工具。现在由你决定。
foreach($db->query("SELECT * FROM rates WHERE mileage<='".$term."' DESC LIMIT 1") as $row) {
  echo "<input type='text' name='answer' value='".$row['ratepermile']."'>";
}
catch (PDOException $e) {
  echo $e->getMessage();
  throw($e);
}