2012-02-27 12 views
1

私はmysql_query()をしようとしています。それが成功すれば、別のテーブルでフィールドを更新する必要がある別のテーブルを実行することはできません。PHP、jQuery AJAX - 2 mysqlクエリ

私のmysql_query();コードは次のようになります。質問で提供されていない

$query = mysql_query($sql)or die(mysql_error()); 
    if($query){ 
     $sqlU = mysql_query("UPDATE lookup SET lookupStatus=1 WHERE lookupId=".(int)$post['FK_lookupId'].""); 
     return true; 
    } 

$sqlは単純なINSERT文です。

$sqlU UPDATEステートメントは実行されていません。

P.S:問題は、jQuery AJAXを実行しているため、最初のときにmysql_query()です。それは私のPHPの残りの部分をカットしている。

私のjQuery:

$('#lookupAnswerGo').submit(function() { 
var dataString = $(this).serialize(); 

$.ajax({ 
    type: "POST", 
    url: "/includes/classes/handler.php?do=addLookupAnswer", 
    data: dataString, 
    success: function(returnedData){ 

     if(returnedData){ 
      $('.errorMessage').fadeIn().html(returnedData); 
     } else { 
      window.location.href = ""; 
     } 

    } 
    }); 
    return false; 
}); 

私は問題についての権利だ場合には、どのように私はPHPを遮断するのを防止します、AJAXのですか?このAJAX呼び出しの問題を検討してくださいない理由はありません

$query = mysql_query($sql)or die(mysql_error()); 
    if(mysql_affected_rows() > 0) 
    { 
    $sqlU = mysql_query("UPDATE lookup SET lookupStatus=1 WHERE lookupId=".(int)$post['FK_lookupId'].""); 
    return true; 
    } 

+0

AJAXは「PHPを切断しません」というだけで、ブラウザと同じようにWebサーバーからページをリクエストするだけです。 – klennepette

+0

あなたのPHPファイルを(AJAXを使わずに)直接呼び出して、結果を見てください。 '$ query'の内容を取得するには 'print_r()'または 'echo'を使用してください – user1027167

+0

AJAXがクエリが成功したかどうかを判断でき、 – skolind

答えて

1

たぶん、あなたは最初のクエリは、このような何かを実行したかどうかを確認する方法のより堅牢なバージョンを試みることができます。 PHPスクリプトの実行は、PHPの文で終わるだけです。つまり、returnまたはdieです。 AJAX自身は、もしあなたがPHPで適切なステートメントを提供しない限り、クエリが終了したかどうかを判断することはできません。

+0

私はこれを試してみます私のコンピュータに戻ってください。ありがとう! – skolind

+0

ok、私に教えてください:) – Michal

+0

それは働いているように見えます:) – skolind