【问题标题】:echo a session variable in a <a href> over to the next page?将 <a href> 中的会话变量回显到下一页?
【发布时间】:2013-03-28 22:51:22
【问题描述】:

请有人帮我解决这个问题。我有这个 MySQL 查询,它列出了我网站上的用户,并回显了一个链接,可以单击该链接将您带到用户的个人资料:

<?php
        $online_set = online_channel();
        while ($online = mysql_fetch_array($online_set)) {
            echo "<div class=\"online_row\"><a href=\"profile.php?id={$online['user_id']}\"><img width=25px height=25px src=\"data/photos/{$online['user_id']}/_default.jpg\" class=\"online_image\"/><div class=\"online_text\">{$online['display_name']}</div></a></div>";?>
            <? } ?>

链接转到 profile.php 并回显用户的“user_id”,因此它知道要将您带到哪个用户配置文件,现在我想以某种方式在链接中包含一个会话变量,以便在该用户上显示一条消息点击链接后的个人资料。

我尝试在链接中包含$_SESSION['chat'],但它不起作用:

 <?php
            $online_set = online_channel();
            while ($online = mysql_fetch_array($online_set)) {
                echo "<div class=\"online_row\"><a href=\"profile.php?id={$online['user_id']}{$_SESSION['chat']}\"><img width=25px height=25px src=\"data/photos/{$online['user_id']}/_default.jpg\" class=\"online_image\"/><div class=\"online_text\">{$online['display_name']}</div></a></div>";?>
                <? } ?>

我也在尝试使用这个来执行 profile.php 中的会话:

<?
session_start();
if(isset($_SESSION['chat']))
   echo $_SESSION['chat']="<div class=\"infobox-favourites\"><strong>Deleted from Favourites</strong> - This user has successfully been deleted from your favourites.</div><div class=\"infobox-close4\"></div>"; 
    unset($_SESSION['chat']);

?>

我尝试过的方法不起作用,我不确定我做对了,所以我非常感谢任何帮助。谢谢

【问题讨论】:

  • 您是否检查过您是否从查询中获得了结果?
  • 是的,我从查询中得到结果,我只是不确定是否可以像我所做的那样添加两个回声:(
  • 你看过 PHP session_id 函数吗? php.net/manual/en/function.session-id.php
  • 这在最后一段代码中似乎不正确:echo $_SESSION['chat']="..... 只是回显字符串。
  • 还要确保在 html 属性中包含引号。 id=" "。更好的是与 PHP 连接:echo "&lt;div id='" . $var . "'&gt;&lt;/div&gt;";

标签: php mysql session hyperlink


【解决方案1】:

试试这个...为了更容易调试你拥有的整个代码

<?php
            $online_set = online_channel();
            while ($online = mysql_fetch_array($online_set)) {
                ?>
                <div class="online_row">
                    <a href="profile.php?id=<?php echo $online['user_id'];?>">
                        <img width=25px height=25px src="data/photos/<?php echo $online['user_id'];?>/_default.jpg/" class="online_image" />
                        <div class="online_text\">
                            <?php echo $online['display_name'];?>
                        </div>
                    </a>
                </div>
                <?php
            }
?>

只需查看我发布的代码,了解如何更好地回显整个 div

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-16
    • 1970-01-01
    • 2013-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 2018-11-30
    相关资源
    最近更新 更多