如何正确地在html锚标记链接中正确转义href,并且仍然能够检索通过url发送的数据,以用于下一页。 我的代码如下:
<a href='course.php?id=".encrypt($courseid)."'>".$result->row('title')."</a>
答案 0 :(得分:2)
您需要对值进行URL编码以保留URL语法,并且由于您将该URL放入HTML中,因此您也应该对其进行HTML编码:
printf('<a href="course.php?id=%s">%s</a>',
htmlspecialchars(rawurlencode($courseid)),
htmlspecialchars($result->row('title')));
请参见http://php.net/htmlspecialchars,http://php.net/rawurlencode,http://php.net/printf。
另一方面,该值将在$_GET['id']
中可用(您无需在那里进行任何解码)。