【问题标题】:PHP output to HTML from databasePHP从数据库输出到HTML
【发布时间】:2012-08-31 11:49:02
【问题描述】:

我无法将行值的值输出到 html 内容,有什么建议吗?我尝试使用不同的方法,以便在页面上打印,但它总是空白有什么办法吗?

<?php 

//connect
$dbh=mysql_connect ("localhost", "xxxx_admin", "xxxx") 
   or die ('I cannot connect to the database.');
 mysql_select_db ("xxxx_Client"); 

$term = $_POST['term'];
echo $term;

$sql = mysql_query("select * from ClientTable where FName like '$term'");

if ($row['FName'] == $term){

$ID = $row['ID'];
$FName = $row['FName'];
$LName = $row['LName'];
$PHON = $row['PHON'];

}

else
echo "invalid input";

?>

<html>
<head>
<title></title>
</head>
<body>
asdadasdad<br>

<?php echo $FName; ?><br>a<br>
<?php echo $_POST["$LName"]; ?><br>a<br>

$FName <br>
$LName <br>
$ID <br>
$PHON <br>

sadasdasda
</bod>
</html>

【问题讨论】:

  • 你在哪里设置$row
  • 您需要某种$row = mysql_result($sql,0); 调用顺便说一句,您还应该使用 mysqli_* 函数,因为不推荐使用 mysql_* 风格。

标签: php html database post methods


【解决方案1】:

首先,您可能没有从查询中得到任何结果。通常在使用 LIKE 时,您会在查询中使用某种形式的通配符,如下所示:

select * from ClientTable where FName like '%$term%'

其次,您实际上并没有使用结果集。

您需要使用某种mysql_fetch_array 或类似名称将值放入$row。

当然,你真的不应该使用 mysql_* 函数,因为它们已经被 mysqli_* 或 PDO 弃用了。

最后,您需要学习如何防止 SQL 注入。您的代码现在很容易受到攻击。

【讨论】:

    【解决方案2】:

    尝试在代码开头附近添加error_reporting(E_ALL);。通知消息很有可能会告诉您您做错了什么。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-11
      • 1970-01-01
      • 2017-12-12
      • 2014-10-11
      • 2017-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多