Php 变量$\u获取变量

Php 变量$\u获取变量,php,mysql,variables,get,variable-variables,Php,Mysql,Variables,Get,Variable Variables,我不确定这是否可行,但我正在尝试构建一个可以构建MYSQL查询的函数 它有一个基本查询。若URL有一个get值script.php?game=AGame,它将接受那个get变量并重命名它。然后,脚本将相应地附加完成MYSQL查询所需的数据 function build_query($getvar, $renamevar, $dbfield){ $query = "SELECT * FROM release_dates "; $arguments = 0;

我不确定这是否可行,但我正在尝试构建一个可以构建MYSQL查询的函数

它有一个基本查询。若URL有一个get值script.php?game=AGame,它将接受那个get变量并重命名它。然后,脚本将相应地附加完成MYSQL查询所需的数据

    function build_query($getvar, $renamevar, $dbfield){
        $query = "SELECT * FROM release_dates ";
        $arguments = 0;

        if(isset($_GET['$getvar'])){
        $renamevar = $_GET['$getvar'];

        if($arguments >= 1){
                $query .= "AND  '$dbfield' = '$renamevar' ";
                $arguments = $arguments +1;
            }
            else{
                $query .= "'$dbfield' = '$renamevar' ";
            }
        }
    }

    build_query(g, game, game_title);
但是,在运行代码时,我会出现以下错误:

注意:在第46行的/www/sites/164/index.php中使用未定义的常量game-假定为“game”

注意:在第46行的/www/sites/164/index.php中使用未定义的常量g-假定为“g”

注意:在第46行的/www/sites/164/index.php中使用未定义的常量game_title-假定为“game_title”

任何帮助都将不胜感激。

调用此函数

 build_query('g', 'game', 'game_title');

当你意识到三件事时,这是可能的:1。关联数组键类型为字符串2。试着先把你传递的作为密钥的内容进行var_转储3。字符串文字包含在单引号或双引号和4中。字段名不包含在单引号中。要么什么都没有,要么就是回跳。也就是说,“您的代码容易受到SQL注入攻击。在编写与数据库对话的生产代码之前,请研究这个主题。此外,函数中的逻辑是错误的,$参数将始终是0,就像现在一样。6.您生成查询,但不以任何方式使用/返回它。7.请重新审视整件事。