当我使用GET命令从上一页的地址栏中获取字段然后将其显示在我的表格中时,如何显示字段?
我试图在表格中显示该字段,但没有运气。该字段称为“参考”
使用下面我希望获得对表的引用。 (我尝试过以下 echo“”。$ row ['$ Reference']。“”; )
http://test.com/searchresults.php?Reference=456789 $参考= $ _ GET [ '参考'];
搜索结果页
<?php
require_once('auth.php');
$host=""; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name="Physio"; // Table name
// Connect to server and select database.
mysql_connect($host, $username, $password)or die("cannot connect");
mysql_select_db($db_name)or die("cannot select DB");
// get value of Reference that sent from address bar
$Reference=$_GET['Reference'];
$sql="SELECT * FROM $tbl_name WHERE Reference='$Reference'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
if(!isset($_POST['postcode'])) {
header ("location:index.php");
}
echo "<p> Results </p>" ;
$search_sql = "SELECT * FROM `Physio` WHERE Postcode like '%" . $_POST['postcode'] . "%'";
$search_query = mysql_query($search_sql);
while ($search_rs = mysql_fetch_array($search_query))
{
echo"<table><tr>" ;
echo '<th>Reference</th><th>Select</th><th>PhysioReference</th><th>Physio</th><th>Postcode</th><th>Line1</th><th>Tel</th>';
while ($search_rs = mysql_fetch_array($search_query))
{
echo '<tr>';
echo "<td>" . $row['$Reference'] . "</td>";
echo "<td><a href=\"Physiotoinstruction.php?Reference={$search_rs['Reference']}\">Select</a></td>";
echo "<td>".$search_rs['PhysioReference'] . "</td>";
echo "<td>".$search_rs['Name'] . "</td>";
echo "<td>".$search_rs['Postcode'] . "</td>";
echo "<td>".$search_rs['Line1'] . "</td>";
echo "<td>".$search_rs['Tel'] . "</td>";
echo '</tr>';
}
echo '</table>';
}
if (!empty($search_rs))
{
echo "<p> Results Found </p>" ;
}
else
{
echo "<p> No Results Found </p>" ;
}
?>
答案 0 :(得分:2)
当使用单引号时,变量不会扩展,并且您也尝试访问不在范围内的名为$row
的变量(即此时不存在)。以下就足够了:
$rows[$Reference]
或者在代码的前面将$rows
更改为$row
,无论哪种语义最有意义。
答案 1 :(得分:1)
而不是$row['$Reference']
使用$row[$Reference]
。
除此之外不要使用mysql_ *因为它已被弃用。使用 mysqli 或 PDO 。
此外,您从网络收到的转义参数。否则你很容易受到mysql注入攻击。
答案 2 :(得分:0)
您可以使用以下方法
$row["$Reference"] // with double quotes
或
$row[$Reference] //no quotes
与单引号一样,它被视为字符串。
阅读this以供参考。