【问题标题】:How could I add a PHP variable inside a query?如何在查询中添加 PHP 变量?
【发布时间】:2018-10-23 00:30:44
【问题描述】:

在这里,我创建了一个带有内连接的查询以包含我的所有表;但我想直接存储在查询$id_foro 中,其中id_foroequipo01_foros 的一部分? 那么,我可以创建像equipo01 foros.id_foro = $id_foro 这样的东西吗?

我希望$id_foro 显示我选择的表中的所有不同数据

$q = "
select 
    equipo01_foros.id_foro, 
    equipo01_usuarios.usuario,
    equipo01_foros.nombreforo, 
    equipo01_foros.descripcion,
    equipo01_comentarios.id_comentarios, 
    equipo01_comentarios.comentarios
from equipo01_usuarios
inner join equipo01_comentarios 
  on equipo01_usuarios.id_usuarios = equipo01_comentarios.id_usuarios 
inner join equipo01_foros
  on equipo01_foros.id_foro = equipo01_comentarios.id_foro
 inner join equipo01_foros 
 on equipo01_foros.id_foro
";

【问题讨论】:

  • 双引号内的任何 php 变量都扩展为它的值
  • 如果您想在查询中使用 PHP 代码中的任何变量,您应该使用参数化 Prepared Statements

标签: php html sql variables inner-join


【解决方案1】:

"equipo01 foros.id_foro = '{$id_foro}'"

在双引号字符串中,大括号中的变量被替换为值。它们在没有大括号的引号中展开,但有时需要用括号括起来以避免歧义的解释。所以我只是一直这样做。即使是数字键,我也使用单引号,以便变量为空或字符串的查询无法获得结果,而不是生成 SQL 解析错误。显然,如果变量来自客户端输入,则需要在 SQL 语句中使用之前以某种方式对其进行验证。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多