Php 变量$\u获取变量
我不确定这是否可行,但我正在尝试构建一个可以构建MYSQL查询的函数 它有一个基本查询。若URL有一个get值script.php?game=AGame,它将接受那个get变量并重命名它。然后,脚本将相应地附加完成MYSQL查询所需的数据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;
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.请重新审视整件事。