【问题标题】:Why does mysql_query need a variable to execute?为什么mysql_query需要一个变量来执行?
【发布时间】:2013-07-09 23:20:03
【问题描述】:

当我使用此代码时,一切正常。但是当我删除“$enterLocation =”时,代码没有被执行,我不明白为什么。有什么想法吗?

$sql_location = "INSERT INTO location (lat, prov, lon, acc) VALUES ('$jsonLocation[lat]', '$jsonLocation[prov]', '$jsonLocation[lon]', '$jsonLocation[acc]')";
$enterLocation = mysql_query($sql_location) or die("Failure!");

PS:我知道首选方法是使用 mysqli_query 甚至 PDO-stuff,我稍后可能会实施,但我偶然发现了这一行,想知道为什么它不能按预期工作。

【问题讨论】:

  • mysql_query 仍然会被执行,即使你没有将结果分配给任何东西。
  • 我建议不要使用 mysql_query() 并考虑使用 mysqli 或 PDO - php.net 上有大量文档

标签: php mysql execution


【解决方案1】:

你可以像这样简单地使用它

mysql_query("INSERT INTO location (lat, prov, lon, acc) VALUES ('$jsonLocation[lat]', '$jsonLocation[prov]', '$jsonLocation[lon]', '$jsonLocation[acc]')") or die("Failure!");

你不需要使用变量

你可能想使用 pdo 它会像这样工作:

 $db->query("INSERT INTO location (lat, prov, lon, acc) VALUES ('$jsonLocation[lat]', '$jsonLocation[prov]', '$jsonLocation[lon]', '$jsonLocation[acc]')")

它更好、更快、更容易,您可以在学习 PDO 上找到帮助 PHP Official Site

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 2018-01-28
    • 2013-05-11
    相关资源
    最近更新 更多