プロが教えるわが家の防犯対策術!

PHPを使って作成したボタンをクリックすると他のPHPの関数を呼び出す処理を
作りたいのですが、
ボタンのクリックイベントを表現する方法は
JavaScriptで記述する方法がいいのでしょうか?
その場合、JavaScriptからPHP関数を呼び出すには
どのように処理をすればいいのかいくら検索しても
出てこなかったため質問をしてみました。
いい処理方法があったら教えてください。

A 回答 (2件)

javascriptから直接PHP関数を呼ぶ事は出来ません。

なぜなら、Webページ内に
記述されたjavascriptは利用者のパソコンのブラウザー内で解釈され実行され
ています。一方PHPは、Webサーバー内で実行されて、Webページを出力するもの
です。javascriptに相互通信機能は基本的にありません。javascriptはWebサー
バーにWebページを要求出来るだけで、PHPのページを要求するとそのページに
画面遷移して、遷移もとのページはブラウザーの中からなくなります。
遷移もとを残して制御するためには、
一つはフレーム(インラインフレーム又は、フレームセット)を利用して
遷移先のページを別フレーム内に表示させて、そのフレーム内で目的のPHP
関数を実行させ(もちろんサーバー側の仕事です)結果を表示させる方法
もう一つは、javascriptのAJAX通信を使う方法です。
AJAX通信の場合、javascriptはサーバー側のPHPプログラムにリクエストを
GETやPOSTの形式で送り、結果を、テキストファイルや、XMLの形で返して
もらって、それを自ページ内に取り込む事になります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
早速、Ajaxの方法を使って実験をしています。

お礼日時:2010/05/11 08:49

PHPはサーバ側、JavaScriptはクライアント側で実行されるものなので、直接呼び出しは無理です。


ですので下記のような順序で目的のPHPの関数を実行することになります。

クライアント側のユーザが最初のページにアクセス
 ↓
サーバ側の最初のページのPHPでHTML(ボタンクリックで次のページにアクセスするもの)を作成
 ↓
クライアント側のブラウザが最初のページが作成したHTMLを解釈して表示
 ↓
クライアント側のユーザがブラウザ上のボタンをクリック(次のページにアクセス)
 ↓
サーバ側の他のPHPの関数を実行するページにアクセスされて、PHPが実行される


ボタンをクリックした時の次のページにアクセスする処理は、javascriptのajaxでも、HTMLのsubmitボタンでも、CSSでリンク(aタグ)をボタンのように見せかけるでも、目的にあった(好きな)方法で。
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2010/05/11 08:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!