0

此代码正在检索从其他页面发送的数据:

$data=$DB->quote($_REQUEST['data']);
$playperPosition=$DB->quote($_REQUEST['playperPosition']);
$playerStatictic=$DB->quote($_GET['playerStatictic']);
$league=$DB->quote($_GET['league']);

如何从数据库中选择数据并根据 $playerStatictic 排序

我正在使用此代码,但不起作用:

 $i=0;
  $sql_playerstatistic="select * from ".$prev."playerstatistic where leagueID = $league ORDER BY $playerStatictic desc";

  $re_playerstatistic=$DB->prepare($sql_playerstatistic);
  $re_playerstatistic->execute();
  while($d_playerstatistic=$re_playerstatistic->fetch(PDO::FETCH_ASSOC))
  {
    $i++;
    $sql_team="select * from ".$prev."team where id=".$d_playerstatistic['teamID']."";
    $re_team=$DB->prepare($sql_team);
    $re_team->execute();
    $d_team=$re_team->fetch(PDO::FETCH_ASSOC);

谢谢,

4

1 回答 1

0

这可能是你的问题:

$playerStatictic=$DB->quote($_GET['playerStatictic']);

当您想在查询中使用时,您需要引用它们,尽管建议使用带有绑定变量的准备好的语句。当你想在查询中使用表名或字段名时,你不应该像引用值一样引用它们,而是在必要时使用反引号引用它们(假设是 mysql)。

但是,这会让您对 sql 注入持开放态度,因此当您想在查询中注入表名和字段名时,您需要根据允许的表名和字段名的白名单检查它们。

于 2013-06-27T14:42:52.407 回答