这是我用来设置URL:中变量的代码
<a href="topics.php?category=<?php echo $category['id']; ?>" class="list-group-item <?php echo is_active($category['id']); ?>"><?php echo $category['name'] ?> </a>
这是我用来从URL获取它的代码:
<?php $category = isset($_GET['category']) ? $_GET['category'] : null;?>
在那之后,这就是我使用它的地方:
<?php if(isset($category)) : ?>
<?php foreach(getByCategory($category) as $post) : ?>
其中getByCategory
为:
function getByCategory($category_id)
{
$db = new Database();
$category_id =("SELECT topic.*, categoryf.*, user.username, user.avatar
FROM topic, categoryf, user
WHERE topic.category_id=categoryf.id AND
topic.user_id=user.id");
$row =$db->select($category_id);
return $row;
}
变量$category
不会从URL中获取值的原因是什么?
编辑:这是我从echo $category_id;
得到的
SELECT topic.*, categoryf.*, user.username, user.avatar
FROM topic, categoryf, user
WHERE topic.category_id=categoryf.id
AND topic.user_id=user.id
这里我需要的是将$category_id设置为URL中的变量,所以我希望它看起来像这样:
SELECT topic.*, categoryf.*, user.username, user.avatar
FROM topic, categoryf, user
WHERE topic.1(category_id)=categoryf.id
AND topic.user_id=user.id
好的,我修复了它。由于某种原因,它无法设置值,所以我添加了AND category_id=$category_id
来尝试设置它,令我惊讶的是,它成功了。