我有以下代码,但在返回时无法获得完整的变量值。
<?php
$no7="Girls pink";
$no8="All Categories";
$aw="2";
echo'<table width="auto" border="0">
<tr>
<td width="auto" class="s">'; echo "<a href=search.php?search_name=".$no7."&mydropdown=".$no8."&pno=".$aw.">".$aw."</a>"; echo'</td>
</tr>
</table>';
?>
感谢您的帮助,问候,
答案 0 :(得分:3)
在href
值:
echo "<a href='search.php?search_name=".$no7."&mydropdown=".$no8."&pno=".$aw."'>".$aw."</a>";
// ^--------------------------- quotes ----------------------------^
答案 1 :(得分:1)
echo "<a href='search.php?search_name=" . urlencode($no7) . "&mydropdown=" . urlencode($no8) . "&pno=" . urlencode($aw) . "'>" . htmlspecialchars($aw) . "</a>";
另外:在网址周围添加引号,并将&
替换为&
以获得更好的HTML语法。
答案 2 :(得分:0)
清理可怕的格式/布局并使用HEREDOC:
echo <<<EOL
<table width="auto" border="0">
<tr>
<td width="auto" class="s"><a href="search.php?search_name={$no7}&mydropdown={$no8}&pno={$aw}">{$aw}</a></td>
</tr>
</table>
EOL;
注意HEREDOC如何消除对所有单个回声的需要,允许对字符串进行变量插值(不再“断开字符串以连接”),并允许HTML代码的正确格式化/缩进。
答案 3 :(得分:0)
问题是变量中的空格。浏览器将空格作为href标记的结尾更是一个问题。如前所述,使用urlencode
或将变量中的空格转换为+