PHP选择然后编辑会话

时间:2014-06-03 11:46:21

标签: php html mysql

我正忙着建立一个网站,但现在我被困住了;这是我的代码

    <select onchange="window.location = '/'  + this.options[this.selectedIndex].value">
    <?php
    $hosts = $mysql->query("SELECT id FROM user_host WHERE uid = '".$_SESSION['id']."'");
    $hostsFetch = $hosts->fetch_assoc();

    if(!isset($_SESSION['siteid'])) {
    $_SESSION['siteid'] = $hostsFetch['id'];
    }

    $host = $mysql->query("SELECT * FROM user_host WHERE uid = '".$_SESSION['id']."'");
    while($item = $host->fetch_assoc()) {
    ?>
        <option value="./home" <?php echo ($_SESSION['siteid'] == $item['id'] ? 'selected' : '') ?>><?php echo $item['name'] . ' - '. $item['domein']; ?></option>
    <?php
    }
    ?>
  </select>

现在,当他选择一个帐户时,他需要进入该帐户。我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:1)

使用您正在使用的html / javascript代码,您将始终转到/home目录。 当您从菜单中选择某些内容时,会触发onchange - 事件。这将获取所选option的值。因此,options中的值是硬编码的,它总是指向不会改变任何内容的同一页。

<select onchange="window.location = '/'  + this.options[this.selectedIndex].value">
<option value="./home" .....>

因此您需要添加一些内容来区分所选的options,例如:

<option value="./home/index.php?user_host=<?php echo $item['id']?>" .....>

在您的php / mysql代码中,您必须使用您传输的GET var做出反应,例如:

$mysql->query("SELECT something FROM table WHERE user_host = ".$_GET['user_host']);