我一直在寻找一种方法来显示MySQL结果作为超链接,点击时将执行另一个查询。
假设我的数据库中有2个表由ALTER TABLE topics ADD FOREIGN KEY(topic_cat) REFERENCES categories(cat_id) ON DELETE CASCADE ON UPDATE CASCADE;
类:
+-----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+----------------+
| cat_id | int(8) | NO | PRI | NULL | auto_increment |
| cat_name | varchar(255) | NO | UNI | NULL | |
| cat_description | varchar(255) | NO | | NULL | |
+-----------------+--------------+------+-----+---------+----------------+
主题:
+---------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+----------------+
| topic_id | int(8) | NO | PRI | NULL | auto_increment |
| topic_subject | varchar(255) | NO | | NULL | |
| topic_date | datetime | NO | | NULL | |
| topic_cat | int(8) | NO | MUL | NULL | |
| topic_by | int(8) | NO | MUL | NULL | |
+---------------+--------------+------+-----+---------+----------------+
我还有一个查询表“类别”的PHP搜索表单:
$var = @$_GET['search'] ;
$trimmed = trim($var);
$query = "select * from categories where cat_name like \"%$trimmed%\"
order by cat_name";
我希望能够将上述查询的结果显示为超链接,单击时,我想显示通过“topic_cat”和“cat_id”链接到“cat_name”的结果。我似乎无法在网上任何地方找到这样的例子。有什么建议?
答案 0 :(得分:0)
输出结果时,请执行
print ("<a href='show_category_topics.php?id=".$row["cat_id"]."'>".$row["cat_name"]."</a>");
在新页面(show_category_topics.php
)上运行查询
$query = "SELECT * FROM topics WHERE topic_cat ='".mysql_real_escape_string($_GET["id"])."'";
并打印结果。
您还可以使用对php页面的ajax调用。