PHPとJavaScriptの連携に困っています。以下のようにフラグを立てテキストボックスに代入しています。
frm.newdata.value = '<?php if(条件) $flg = true; echo $newdata; ?>'
そしてフラグがてばメッセージを出します。
<?php
if($flg) echo 'alert("このデータは登録済みです");';
?>
ところがフラグ($flg)を共有化したいのですが、上下で別物扱いになります。上の処理では代入をしているのでechoでメッセージまでは出せません。
対応策ご存じであれば教えてください。
No.1ベストアンサー
- 回答日時:
PHPとJavaScriptの役割をしっかり分けて考えてください。
【PHP】
・サーバー側で動く
・PHPファイルにリクエストがあると、コードを実行して、出力されたHTMLをブラウザに返す
・リクエストごとに変数の値などは初期化される(状態を保持しない)
・一度HTMLを受信し終えると、(Ajaxを使ってバックグラウンドでやりとりしない限り)更新ボタンを押すまで新たにPHPを実行することは出来ない
【JavaScript】
・ブラウザ側で動く
・更新ボタンを押したり画面遷移しない限り、変数の内容は保持される
・ユーザがブラウザで表示している間はいつでもコードを実行することが出来る
基本的にPHPとJavaScriptで連携するんだったら「JavaScriptのコードを出力する」のではなく「JSONを出力する」方法の方が一般的であり、使い勝手もいいと思います。
JavaScript(jQuery)からPHPのAPIを利用する
http://qiita.com/mpyw/items/62e6e415f86eb30a5ff4
確かにPHPはリクエストごとに変数の値などは初期化されます。
教わったサイトを参考にajax・jQuery・JSONを利用したところやっと思い通りに行きました。
なおJSONに日本語の文字列を渡したところ動作しなくなりましたが、いろいろ試して原因を
つきとめました。今はうまくいっています。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript JAVASCRIPT 1 2022/04/13 09:40
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MySQLでのdeadlockをPHPで検出...
-
PHPでサーバーにインストールさ...
-
PHPからCプログラムを実行して...
-
【PHP】命令は記述順に処理...
-
PHPで外部プログラムのバックグ...
-
phpからエクセルのマクロを実行...
-
copy() で属性保存
-
JSのWINOW.CONFI...
-
シェルスクリプトをPHPで動かそ...
-
query、prepare、executeの違い
-
PHPの自動実行
-
PHPファイルをCron設定からのみ...
-
[cakePHP]外部ファイルの実行方法
-
実行ユーザー切り替え方法
-
PHPからlhaコマンドを使いたい
-
PHPからバッチファイルの実行
-
onedrive にexcelファイルをア...
-
.phpと.incファイルの違いはな...
-
フォントの色を変えるには?
-
CFileDialogの最初のディレクト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
mysql複数レコードをまとめて削...
-
php実行中に実行中のphpファイ...
-
phpからエクセルのマクロを実行...
-
ヒアドキュメントの中で演算子...
-
PHPからバッチファイルの実行
-
PHPのコマンドをnobodyオーナで...
-
copy() で属性保存
-
$argv[1]) && $argv[1]・同じ
-
PHPで外部プログラムのバックグ...
-
Prompt入力値をphp変数として取...
-
PHPでサーバーにインストールさ...
-
PHPで、C#のプログラムを実行す...
-
query、prepare、executeの違い
-
require_onceが動いていない
-
現在、レンタルサーバ(コアサー...
-
IIS + PHP からのWindowsコマン...
-
phpスクリプトのみで定期実行
-
【PHP】命令は記述順に処理...
-
PHP(Windows)でコマンド実行
-
PHPでコマンドプロンプトを実行...
おすすめ情報