2010-12-10 7 views
0
if($_GET['action'] == "add"){ 
     if($_SERVER['REQUEST_METHOD'] == "POST"){ 
      if(empty($_POST['bugtitle']) || empty($_POST['bugdetails'])){ 
       echo 'One of the fields was empty! Go back and try again.<br/>'; 
      } 
      else 
      { 
       $query = "INSERT INTO bra 
          (
          bugtitle, 
          bugdetails, 
          status, 
          ip, 
         ) 
          VALUES 
          (
          '". mysql_real_escape_string($_POST['bugtitle']) ."', 
          '". mysql_real_escape_string($_POST['bugdetails']) ."', 
          '0', 
          '". $_SERVER['REMOTE_ADDR'] ."' 
         )"; 
       $mysqlquery = mysql_query($query); 

       if($mysqlquery){ 
        echo 'Bug reported.<br/>'; 
       } 
       else 
       { 
        echo 'Mysql query failed! Please contact the webmaster!<br/>'.mysql_error().'<br/>'.$query; 
       } 
      } 
     } 
     else 
     { 
      ?> 
      <form action="bra.php?action=add" method="post"> 
       Bug title: <input type="text" name="bugtitle"/><br/> 
       Details:<br/> 
       <textarea cols="50" rows="5" name="bugdetails"></textarea><br/> 
       By pressing &#39;submit&#39; you understand that you will not spam and your ip adress will be logged.<br/> 
       <input type="submit" value="submit"/> 
      </form> 
      <?php 
     } 
    } 

そして、これはそれが返さものです:MySQLクエリエラー:何が間違っていますか?

MySQLのクエリに失敗しました!ウェブマスターにお問い合わせください! SQL構文にエラーがあります。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックしてください。 ')VALUES('バグがあります。 'そして'その呼び出し 'は7行目にあります) INSERT INTO bra(bugtitle、bugdetails、status、ip)このクエリと間違っている何VALUES( 'とそのと呼ばれるマヤ' 'バグがあり'、 '0'、 '127.0.0.1')

?!?

+0

エラーがどのようなあなたのクエリで間違っていることは、あなたの構文に誤り、余分なコンマがあったということです「あなたの構文に近い ')VALUES(...'でエラーが発生した」と述べましたつまり、 '' VALUES(... ')の直前に、エラーメッセージが表示されます。 –

答えて

1

ipの後にコンマを削除します。

INSERT INTO bra 
(
    bugtitle, 
    bugdetails, 
    status, 
    ip 
) 
+0

AH私はそれを逃しました!ありがとう;) – Thew

1
INSERT INTO bra 
         (
         bugtitle, 
         bugdetails, 
         status, 
         ip, 
        ) 

IPはカンマの後、あなたはそれを削除する必要があり

0

valuesの前にもう1つCOMMA(、)を入れました。この チェック:。

$query = "INSERT INTO bra 
          (
          bugtitle, 
          bugdetails, 
          status, 
          ip 
         ) 
          VALUES 
          (
          '". mysql_real_escape_string($_POST['bugtitle']) ."', 
          '". mysql_real_escape_string($_POST['bugdetails']) ."', 
          '0', 
          '". $_SERVER['REMOTE_ADDR'] ."' 
         )"; 
関連する問題