【问题标题】:Store a value in variable from Postgres SQL query in PHP将值存储在 PHP 中 Postgres SQL 查询的变量中
【发布时间】:2020-03-25 05:04:33
【问题描述】:

我有一个来自输入的变量:

$local1 = $_REQUEST['local1'];

我试过这个:

 $latitude1 = pg_query($db, "SELECT latitude FROM local_publico WHERE nome=$local1;");
 val1 = pg_fetch_result($latitude1, 0, 0);

因为查询返回一行包含一列。 但是,每当我尝试使用变量$val1 时,它都不起作用,即使是简单的echo()。

SQL 新手,感谢任何帮助!

【问题讨论】:

    标签: php sql postgresql variables


    【解决方案1】:

    这应该可行:

    $local1 = $_REQUEST['local1'];
    $latitude1 = pg_query($db, "SELECT latitude FROM local_publico WHERE nome=$local1;");
    $val1 = pg_fetch_result($latitude1);
    

    但是,上面的代码容易受到 SQL 注入的影响。你应该这样做:

    $local1 = $_REQUEST['local1'];
    $result = pg_prepare($db, 'my_query', 'SELECT latitude FROM local_publico WHERE nome = $1');
    $result = pg_execute($db, 'my_query', [$local1]);
    $val1 = pg_fetch_result($result);
    

    您可以阅读更多关于 SQL 注入的信息here。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-13
      • 2014-04-24
      相关资源
      最近更新 更多