基本上我有一个页面,允许用户张贴的主题,该表的字段是..出结果,只有当他们=某些领域
- topic_id
- 类别
- sub_category
- topic_data
- posted_by
- 发布
我试图在输出页面上配置页面,以便如果用户发布到类别“常规”& sub_category“Stuff”,它将显示包含Stuff的Sub_cat的两个类别名称General &的所有记录。
这是我的代码,它目前显示一个空白的白屏,没有错误。
$sql = "SELECT users.user_id, users.username, users.profile, topics.topic_id,
topics.category, topics.sub_category, topics.topic_data,
topics.posted_by, topics.posted, topics.view, topics.reply
FROM users, topics
WHERE topics.category = '" . $_GET['category'] . "'
AND topics.sub_category = '" . $_GET['sub_category'] . "'
ORDER BY topics.posted DESC";
$result = mysql_query($sql);
while($rows = mysql_fetch_array($result)){
使用上面的代码,如果我去topics.php?category=General
它成功地显示了通用的记录,不知道这是做这虽然正确的方法。
编辑
该主题贴,我改变了头重定向从topics.php
到topics.php?category=$category&sub_category=$sub_category
这工作,但我对系统用户和它现在发布了相同的数据,这两个用户....
对于SQL注入攻击**和**,如果你还没有被攻击,你将被黑客攻击**。使用PDO或类似的准备/参数化查询来完全避免此问题。 – Brad
感谢您的提示,这仅供内部使用,不会随机黑客访问此网站,谢谢。 – user2571547
它有什么不同?在安全性方面,您刚刚犯了第二个最常见的错误。即使由于某种原因你不关心安全性,你仍然通过不转义数据来破坏查询。你的应用程序将不可避免地失败。 – Brad