-2

データベースに行を追加しようとしていますが、何をしても同じエラーが発生し続けます。エラーは解析エラーです:構文エラー、予期しないT_STRING。これは私のコードです:

<!DOCTYPE html>
<html>
<body>
<?php
$con=mysqli_connect("mysql5.000webhost.com","********","******","*******");
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
//Connecting to the Database works
INSERT INTO test (`1`, `2`, `3`, `4`) VALUES (\'11\', \'11\', \'11\', \'11\');
mysqli_close($con);
?>  
</body>
</html> 
4

3 に答える 3

2

\ステートメント内のを削除し、

$query = "INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')";

ただし、列が整数の場合、

$query = "INSERT INTO test (`1`, `2`, `3`, `4`) VALUES (11, 11, 11, 11)";
于 2013-03-06T02:34:48.593 に答える
1

クエリを実行する必要があります-mysqli_query()

$query = mysqli_query("INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')");
于 2013-03-06T02:41:26.053 に答える
1

あなたのSQLステートメントがPHPコードであるかのように書かれていることに気づきました。SQLはphpインタープリターによって直接解析されません。最初にSQLを変数に入れてから、そのステートメントを実行する必要があります。また、一重引用符をエスケープしていますが、良くありません

     $sql="INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')";
    $result = $db->query($sql);

    while ($data = $result->fetch_assoc())
    {
       $retval[]= $data;
    }

$dbが有効な接続であると仮定します

于 2013-03-06T02:42:02.960 に答える