【问题标题】:php syntax error when calling mysqli_query, how to format and execute sql commands via php调用mysqli_query时出现php语法错误,如何通过php格式化和执行sql命令
【发布时间】:2014-05-06 04:44:11
【问题描述】:
<?php include 'functions.php'; ?>

<?php
// Create connection
$con=mysqli_connect("localhost","XXX","XXX","XXX");

// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
?>

<?php

$ret=standings();
$count=count($ret['position']);


$sql = "INSERT INTO `bryan_wrdp1`.`btb_picks` (`position`, `golfer_name`, `round_1`, `round_2`, `round_3`, `round_4`, `today`, `through`, `total`, `strokes`, `player_name`, `pick_no`) VALUES (\'1\', \'b\', \'5\', \'5\', \'5\', \'5\', \'-8\', \'f\', \'44\', \'44\', \'\', \'\');"

mysqli_query($con,$sql) or die(mysql_error());

?>

解析错误:语法错误,第 26 行 /home1/bryan/public_html/golf/leaderboard_v2.php 中的意外 T_STRING

为什么这行会产生语法错误?应该如何格式化?

这条线工作得很好:

mysqli_query($con, "DELETE FROM `btb_picks`;") or die(mysql_error());

【问题讨论】:

  • 一方面,这个mysql_error 必须是mysqli_error 你不能混合这两种函数类型。另外,您的报价放错了位置,应该读作)"; 我以前看过这段代码,顺便说一句。您的代码有太多问题。
  • -1。我在当前代码中看不到第 26 行。

标签: php mysql sql syntax


【解决方案1】:

你错过了这一行末尾的分号:

$sql = "INSERT INTO `bryan_wrdp1`.`btb_picks` (`position`, `golfer_name`, `round_1`, `round_2`, `round_3`, `round_4`, `today`, `through`, `total`, `strokes`, `player_name`, `pick_no`) VALUES (\'1\', \'b\', \'5\', \'5\', \'5\', \'5\', \'-8\', \'f\', \'44\', \'44\', \'\', \'\');"

并且字符串中不需要\,因为您一直在双引号内使用单引号。

试试这个:

$sql = "INSERT INTO `bryan_wrdp1`.`btb_picks` (`position`, `golfer_name`, `round_1`, `round_2`, `round_3`, `round_4`, `today`, `through`, `total`, `strokes`, `player_name`, `pick_no`) VALUES ('1', 'b', '5', '5', '5', '5', '-8', 'f', '44', '44', '\', '\');";

【讨论】:

    【解决方案2】:

    你不应该放斜线
    改成:

    INSERT INTO `bryan_wrdp1`.`btb_picks` (`position`, `golfer_name`, `round_1`, `round_2`, `round_3`, `round_4`, `today`, `through`, `total`, `strokes`, `player_name`, `pick_no`) VALUES ('1', 'b', '5', '5', '5', '5', '-8', 'f', '44', '44', '', '');
    

    【讨论】:

    • 在条目包含需要转义的字符 (') 的情况下,是否不需要斜线?我的完整数据集就是这种情况。
    猜你喜欢
    • 2014-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 2011-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多