【问题标题】:How to load variations of a code based on user?如何根据用户加载代码的变体?
【发布时间】:2011-03-29 22:44:30
【问题描述】:

我希望能够根据用户提供代码的不同变体。因此,如果用户 A 登录,我希望他们看到与他们的偏好相关的代码/页面。

我知道我们可以做一个 php/mysql 来保存路径。但是我如何在同一页面上提供代码。所有用户都有相同的页面 index.php、home.php、profile.php,但我希望能够使用相同的页面来处理这些请求,只需显示他们特定的代码..

【问题讨论】:

    标签: php customization


    【解决方案1】:

    试一试……

    您可以将从数据库加载的首选项或其他任何内容存储在会话变量中。 下一步是简单地在页面上打印这些变量。这样每个用户都有自己的页面。

    例子:

    echo "<p>Welcome ".$_SESSION['username']." to your domain!</p><br />";  
    echo "<p>I heard you like ".$_SESSION['fav_food']." a lot.</p>";
    

    这将熄灭:

    Welcome Barney to you domain!  
    I head you like chocolate coockies a lot.
    

    你也可以尝试使用 Ajax,但我自己是 Ajax 的菜鸟,所以我无法帮助你,但你可以做一些搜索。

    希望对你有帮助!

    更新:

    要设置会话变量,您可以从您的源中加载一个值,然后像任何其他变量一样存储它。 喜欢:

    $_SESSION['username'] = $queryresult['user'];
    

    确保您通过以下方式启动每个页面来启用会话:

    session_start();
    

    我希望这是对您问题的回答。

    您实际上是从哪里获得用户 a 的信息的?我想是一个数据库?

    【讨论】:

    • 不太熟悉 Ajax。如何将自定义代码加载到此代码中?就像让自定义功能一样。我如何将它加载到您上面提交的代码中..
    • 这与AJAX无关,忽略那一点,但注意其余部分。会话数据很可能是您想要的。
    • 我明白了。我不明白如何提供自定义代码。假设我专门为您设计了一个功能。你应该是看到它的人。因此,与其将您重定向到一个单独的页面,我如何在其他人都作为会员获得但功能和服务对您来说是独一无二的页面上为您提供该代码。
    • 如果您的站点的每个成员都有独特的“功能和服务”,您应该将这些功能和服务存储在您的数据库中,并在用户请求时加载它们。确保所有内容都是统一的,例如 stackoverflow 上的个人资料页面。此外,如果您能说出您的意思是哪种功能,您的问题的答案可能会更容易给出。
    • 该功能可以是另一个文本字段或类似分析工具或照片增强功能的东西
    【解决方案2】:

    不完全确定这是否是您所追求的,但也许它会帮助您走上正确的道路...

    <?php
        // sample preferences, read from database
        $userPrefs = array(
            'block1' => true,
            'block2' => false,
            'block3' => true
        );
    
        $block1 = '<div id="block1">This is Block #1!</div>' . PHP_EOL;
        $block2 = '<div id="block2">This is Block #2!</div>' . PHP_EOL;
        $block3 = '<div id="block3">This is Block #3!</div>' . PHP_EOL;
    
        if ($userPrefs['block1'] == true) { echo $block1; }
        if ($userPrefs['block2'] == true) { echo $block2; }
        if ($userPrefs['block3'] == true) { echo $block3; }
    ?>
    

    输出:

    <div id="block1">This is Block #1!</div>
    <div id="block3">This is Block #3!</div>
    

    【讨论】:

    • 好的。这可能是它。所以我可以在块中包含 php 代码并为它们提供服务。给我24小时玩它。谢谢!
    猜你喜欢
    • 2021-10-27
    • 1970-01-01
    • 2015-07-17
    • 1970-01-01
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    相关资源
    最近更新 更多