2016-09-28 13 views
0

MySQLデータベースにフォームのフィールドを挿入するphpファイルへのajax呼び出しを行う関数があります。挿入操作は正常に機能しますが、関数はアラートで応答を出力すると上記のエラーを返します。誰かがなぜこれが起こるのか教えてもらえますか?アラートに示さWebサービスへのAjaxリクエストは動作してもエラーを返します

エラー:

答え:{ "readyStateの":0、 "ステータス":0、 "STATUSTEXT": "エラー"}

funcoes.js

function salvar(){ 
$.ajax({ 
    type: 'POST', 
    dataType: 'json', 
    data: {operationType: 'insert', nome: $('#nome').val(), sobrenome: $('#sobrenome').val(), idade: $('#idade').val() }, 
    url: 'http://localhost/projetos/wstest/cadastrar.php', 
    ContentType: 'application/json', 
    success: function(response){ 
     alert('Resposta: '+JSON.stringify(response)); 
    }, 
    error: function(err){ 
     alert('Resposta: '+JSON.stringify(err)); 
     alert('Erro ao inserir registro!'); 
    } 
});} 

cadastrar.php

include './conection.php'; 

header("Access-Control-Allow-Origin: *"); 

$link = conectar(); 

$nome = mysqli_real_escape_string($link, $_REQUEST['nome']); 
$sobrenome = mysqli_real_escape_string($link, $_REQUEST['sobrenome']); 
$idade = mysqli_real_escape_string($link, $_REQUEST['idade']); 

$query = "INSERT INTO `usuario`(`nome`, `sobrenome`, `idade`) " 
    . "VALUES ('$nome','$sobrenome','$idade')"; 

$res = mysqli_query($link, $query); 

if(isset($_POST['operationType'])) 
{ 

    if ($_POST['operatioType'] == "insert") 
{   
    $query = "INSERT INTO `usuario`(`nome`, `sobrenome`, `idade`) " 
      . "VALUES ('$nome','$sobrenome','$idade')"; 

    $res = mysqli_query($link, $query); 

    if ($res == true) 
    { 
     $resultado = 1; 

     return $resultado; 
    } 
    else 
    { 
     $resultado = 0; 

     return $resultado; 
    } 

    echo json_encode($resultado); 
} 

else if($_POST['operationType'] == "login") 
{ 

} 
} 
else 
{ 
    echo "Formato de requisição inválido! O aplicativo não conseguiu se comunicar " 
. "de maneira correta com o servidor."; 
} 
+0

ファーストをブロックした場合のラインreturn $resultado;を削除し、ここを見て:http://www.justinball.com/2013/02/25/jqxhr-returning-readystate-0およびstatus-0 /です。 2番目:PHPコードは1または0を返すので、決してjson応答を送信しません。クエリは2回存在します。 –

答えて

1
  1. ブロック他&が

    if ($res == true) 
    { 
        $resultado = 1; 
    
        return $resultado; //remove this line 
    } 
    
関連する問題