2009-03-01 21 views
0

こんにちは私はそれを印刷する前に次のページを検証する必要があります... 私は何をしましたか?私は最初のページでフレームを使用し、印刷する必要があったページを呼び出しました それは、送信またはボタンのクリック後に2番目のページで起動されている必要があります最初のページでクエリを発生させた...現在のページから別のページを印刷

私はボタンをクリックした後、私はこれをどのようにすべきですか?

誰が私を助けることができる...

答えて

1

さて、私はPHPの知識のあなたのレベルに慣れていないですので、私はいくつかの基本から始めます:

PHPは、サーバー側のスクリプト言語です。ページが要求されると、リアルタイムでコンパイルされます。サーバーはHTMLとPHPを処理し、HTMLのみのページをブラウザーに提供します。クライアント側でPHPコードを実行することはできません。 AJAXを使用せずにボタンを押すときにPHPコードを実行する方法はありません。 AJAZを使用して、ボタンを押すとサーバーにリクエストを行い、iFrameに出力を書き込むことができます。

希望に役立ちます。

1

ので、私は これを行うべきか、JavaScriptで 関数を呼び出すボタンをクリックした後、PHPの機能を起動する必要がありますか?

私はあなたがこれを行うために必要となる理由について非常に明確ではないよしかし、ここで、それはあなたがAJAX呼び出しを行いたいボタンのクリックハンドラでは...

を行きます。私はjQueryを使用していますが、どんなフレームワークやXMLHttpRequest関数を使用しても構いません。

<html> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript" charset="utf-8"></script> 
    <script type="text/javascript"> 
    function ButtonClickHanlder(e) { 
     // Prevent the button from doing something it's normal functions(ie submit form if it is a submit) 
     e.preventDefault(); 
     // Make AJAX Call 
     $.post("test.php", { call: "callMe" }, 
      function(data){ 
       alert("Data Loaded: " + data); 
      } 
     ); 
    } 

    $(function(){ 

     $('#clicker').click(ButtonClickHanlder); 
    }); 
    </script> 
</head> 

<body> 
<a id="clicker" href="#">test</a> 

</body> 
</html> 

参考:http://docs.jquery.com/Ajax

test.phpをページ

<?php 

if(isset($_POST['call']) && $_POST['call'] == 'callMe') { 
    callMe(); 
} 

function callMe() { 
    echo "I am a php function. You rang?"; 
} 

?>