在下面的代码中,我正在尝试打印出1列25行的表格,每行都是指向“booksearch.php?find = urlencode('TABLE_NAME')& searching = yes& amp;搜索=搜索”。
超链接部分无效。对于下面带有超链接的行,我收到以下错误消息:“解析错误:语法错误,意外T_STRING,期待','或';'”。
关于如何使用超链接更改下面的行以使其正常工作的任何想法?
echo "<table class=\"samples\">";
$index = mysql_query("select TABLE_NAME from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='bookfeather' order by CREATE_TIME desc limit 25");
while ($row = mysql_fetch_array($index))
{
echo "<tr><td>".'<a href="booksearch.php?find=urlencode('TABLE_NAME')&searching=yes&search=search">'.$row['TABLE_NAME'].'</a>'."</td></tr>";
}
echo "</table>";
答案 0 :(得分:2)
尝试以下方法:
echo '<tr><td><a href="booksearch.php?find='.urlencode($row['TABLE_NAME']).'&searching=yes&search=search">'.$row['TABLE_NAME'].'</a></td></tr>';
字符串中有urlencode()
,单引号('
)会关闭字符串并导致问题。 urlencode()
是一个函数,需要在字符串之外使用。
您在$row
电话中也错过了urlencode()
变量引用。
答案 1 :(得分:1)
你的回声错了:
echo "<tr><td>".'<a href="booksearch.php?find=urlencode('TABLE_NAME')&searching=yes&search=search">'.$row['TABLE_NAME'].'</a>'."</td></tr>";
应该是:
echo "<tr><td><a href=\"booksearch.php?find=" . urlencode($row['TABLE_NAME']) . "&searching=yes&search=search\">" . $row['TABLE_NAME'] . "</a></td></tr>";
这应该可以解决问题。