doupu2722 2015-11-04 12:20
浏览 38
已采纳

PHP - 通过url id识别用户[复制]

This question already has an answer here:

I've 3 buttons to rank my users. Admin, Member and a button to ban them. So now I wanted to identify them by their "url-id" with $_GET. But when I do that I get an error:

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING).

How can I fix that? I appreciate every help!

<?php
 include_once('connection.php');
 if (isset($_POST['ban'])) { 
  $sql = "UPDATE
          t_user_info
        SET
          user_level = 3
        WHERE 
          id = $_GET['id']";  

$query = $conn->prepare($sql);
$query ->execute(array('user_level' => $user_level));

session_unset();
session_destroy();
header('Location: /PHP/index.php?page=ban');
}
if (isset($_POST['admin_btn'])) { 
 $sql = "UPDATE
          t_user_info
        SET
          user_level  = 1
        WHERE 
          id       = $_GET['id']";  

$query = $conn->prepare($sql);
$query ->execute();
header('Location: /PHP/index.php?page=admin');

}

if (isset($_POST['member_btn'])) { 
$sql = "UPDATE
          t_user_info
        SET
          user_level  = 2
        WHERE 
          id       = $_GET['id']";   

$query = $conn->prepare($sql);
$query ->execute();
header('Location: /PHP/index.php?page=member');

}

?>
</div>
  • 写回答

1条回答 默认 最新

  • dongshi2836 2015-11-04 12:26
    关注

    Your update query had a syntax error and you were not binding the right values. Try this:

    <?php
    include_once('connection.php');
    if (isset($_POST['ban'])) { 
        $sql = "UPDATE
                t_user_info
                SET user_level = 3
                WHERE id = :id";
    
        $query = $conn->prepare($sql);
        $query ->execute(array(':id'=>$_GET['id']));
    
        session_unset();
        session_destroy();
        header('Location: /PHP/index.php?page=ban');
        exit;
    }
    
    if (isset($_POST['admin_btn'])) { 
        $sql = "UPDATE
                t_user_info
                SET user_level  = 1
                WHERE id = :id";
    
        $query = $conn->prepare($sql);
        $query ->execute(array(':id'=>$_GET['id']));
        header('Location: /PHP/index.php?page=admin');
        exit;
    }
    
    if (isset($_POST['member_btn'])) { 
        $sql = "UPDATE t_user_info
                SET user_level  = 2 
                WHERE id = :id";
    
        $query = $conn->prepare($sql);
        $query ->execute(array(':id'=>$_GET['id']));
        header('Location: /PHP/index.php?page=member');
        exit;
    }
    
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起