php
  • jquery
  • mysql
  • ajax
  • post
  • 2016-03-29 12 views -1 likes 
    -1

    私はajax投稿にエラーを返そうとしています。しかし、mysqli->errorはreturnin ブランクです。私はそれをするために多くの方法を試しましたが、常に同じです。 php.iniに何らかの設定があるかどうかわかりません。それで助けてください! HEREMysqli->エラーが空白の値を返しています

    はMY NOOBコードは、この情報

     $sql = "UPDATE ve_industria SET industria_nome='blabla',industria_descricao='blabla' WHERE industria_Id='124142354'"; 
         $result = $mysqli->query($sql); 
         if (!$result) { 
          $arr['resposta'] = "0"; 
          $arr['mensagem'] = $mysqli->error; 
          $arr['titulo'] = "ERRO !"; 
          $arr['tipo'] = "error"; 
         } 
         if ($result) { 
          $arr['resposta'] = "1"; 
          $arr['mensagem'] = "Registro atualizado com sucesso no banco de dados :)"; 
          $arr['titulo'] = "Registro Atualizado !"; 
          $arr['tipo']  = "success"; 
         } 
         echo json_encode($arr); 
    

    ですが、私は指定されたエラーとモーダルボックスに提示するために、Ajaxのページに戻ってメインのHTMLになります。

    +0

    '$ result'が「not」であるという理由だけで、エラーがあったわけではありません。実際には、更新プログラムが*何も変更しなかったことを意味する可能性がありますが、これはエラーではなく、むしろ「何も更新されていません」という結果になります。 –

    +0

    @cale_bドキュメントを見ると、mysqli :: query()はSELECT、SHOW、DESCRIBE、またはEXPLAINの実行時にtrue、false、または結果オブジェクトを返します。返される影響を受ける行の数(mysqli :: $ affected_rows)のようなものについては、 – georaldc

    答えて

    0

    mysqli- affected_rowsは最後のmysql操作で更新されたレコードの数を表示します。影響を受けた行のコードを更新し

    http://php.net/manual/en/mysqli.affected-rows.php

    $sql = "UPDATE ve_industria SET industria_nome='blabla',industria_descricao='blabla' WHERE industria_Id='124142354'"; 
         $mysqli->query($sql); 
         if ($mysqli->affected_rows<=0) { 
          $arr['resposta'] = "0"; 
          $arr['mensagem'] = "0 Records Updated" 
          $arr['titulo'] = "ERRO !"; 
          $arr['tipo'] = "error"; 
         } else { 
          $arr['resposta'] = "1"; 
          $arr['mensagem'] = "Registro atualizado com sucesso no banco de dados :)"; 
          $arr['titulo'] = "Registro Atualizado !"; 
          $arr['tipo']  = "success"; 
         } 
         echo json_encode($arr); 
    
    +0

    答えてくれてありがとうございますが、この解決策では "mysqli>エラー"は発生しません。私はjson値でメインページにエラーを取る必要があります。しかし、mysqli-> errorには空白の値が与えられます。 –

    +0

    $ sqlを実行している間にエラーが発生した場合、$ mysqli-> query($ sql)にキャッチすると、mysql-> errorのレスポンス配列が追加されます。 – sbandari

    関連する問題