2012-04-09 18 views
0

jQuery ajaxからPHPメソッド/関数を呼び出す方法を教えてください。これも可能ですか?それはjQueryで可能ではない場合は、プレーンJavaScriptで可能ですか?私は答えを見つけることを試みているウェブを捜したが、私が見つけることができる場所は役に立たなかった。私は別のPHPファイルにajaxリクエストを作成し、これに専用のセッション変数を設定し、次にリクエストされたphpファイルを作成し、セッションデータを使用してこれを考えていますか?可能な助けをありがとう!jQueryコールPHPメソッドajax

+2

はいあなたはこの考えを超えています。 – blockhead

答えて

3

非常に単純に、 jqueryの:

$.get("code.php"); 

PHP:高度なため

<?php func(); ?> 

は、PHPを実行するには、このjqueryのを使用します。

$.get("code.php?action=func1"); 

とPHPでこのコードを書く:

<?php 
if($_REQUEST['action'] == 'func1'){ 
    func1(); 
    die(); 
} 
?> 
+1

これはクラス内の関数/メソッドで動作しますか? –

+2

はい、次のようにPHPコードを変更することができます:<?php classname :: functionname()?> – EmRa228

7

AJAXコールは、ブラウザでURLをロードするのと同じです。ですから、$_GET変数のように、PHPスクリプトがURLに基​​づいて適切な関数を呼び出す方法を作る必要があります。例えば

:次に

<?php 
    if(isset($_GET['func'])){ 
     $func = $_GET['func']; 
     if($func === 'a') a(); 
     if($func === 'b') b(); 
    } 

にAJAX呼び出しを行いますhttp://example.com/script.php?func=a

$.ajax({ 
    url: 'http://example.com/script.php', 
    type: 'GET', 
    data: {func: 'a'}, 
    success: function(data){ 
     console.log(data); 
    } 
}); 
+1

'data:{func: 'a'}'の後ろにコンマがありません –

+0

@ArnovanOordt:それを指摘してくれてありがとう:) –