header()调用不会定义到哪里

时间:2016-03-07 21:55:00

标签: php

我在echo语句中有一个被锚标签包围的图标:

<a href='/inc/favourite_post.php?id=$thought_id'>
    <span class='glyphicon glyphicon-heart-empty' aria-hidden='true' style='padding-right: 5px;'></span> 
</a>

单击此图标时,我需要它来执行favourite_post.php中的PHP查询。

以下是favourite_post.php

$getid = $_GET['id'];
$favourited_by = $username;
/***********************/
//query to get user id
$get_uid = mysqli_query ($connect, "SELECT * FROM users WHERE username='$username'");
while($query = mysqli_fetch_array($get_uid)){
    $uid = $query['id'];
}
/***********************/
// get details of the post id and username
$get_id = mysqli_query ($connect, "SELECT * FROM user_thoughts WHERE added_by ='$user'");
$row_query = mysqli_fetch_array($get_id);
$fav_by = $row_query['favourited_by'];
$fav_status = $row_query['fav_status'];

$fav_query = mysqli_query ($connect, "INSERT INTO post_favourites (user_id, thought_id) VALUES ('$uid', '$getid')");

header ("Location: ../profile_page/$added_by");

问题通过:

  1. 假设我以Alice身份登录,而我正在使用andersons profile_page。此时的网址将显示为http://localhost/profile_page/anderson
  2. 我喜欢Anderson的帖子,然后点击图标,执行此查询以收藏他们的帖子。
  3. 当用户收藏某人的帖子时,我需要将该网页的位置放在同一地址上,即留在http://localhost/profile_page/anderson。因此,在header()调用中,我已将其位置指定为../profile_page/$added_by$added_by是用户的用户名,应该将用户带回http://localhost/profile_page/anderson,但事实并非如此。
  4. 点击图标后,地址栏会显示http://localhost/profile_page/ ..这意味着$added_by变量未通过。
  5. 修改

    这是我定义$added_by

    的地方
    $get_id = mysqli_query ($connect, "SELECT * FROM user_thoughts WHERE added_by ='$user'");
        $row_query = mysqli_fetch_array($get_id);
            $added_by = $row_query['added_by'];
            $fav_by = $row_query['favourited_by'];
            $fav_status = $row_query['fav_status'];
    

    我之前在其他网页上使用过header ("Location: profile_page/$user")$user是var,用于保存URL中?u=之后的数据。 $added_by从数据中获取相同的数据。 $user$added_by都是用户的用户名,这就是我难倒的原因。

2 个答案:

答案 0 :(得分:0)

我认为您实际上打算在$favourited_by电话中使用header()变量:

header( "Location: ../profile_page/$favourited_by" );

答案 1 :(得分:0)

这行代码无效:<a href='/inc/favourite_post.php?id=$thought_id'>。它应该是这样的:<a href='/inc/favourite_post.php?id=<?php echo $thought_id;?>'>。当然,我认为'$ thought_id'是一个php变量。