teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

3回答

3874閲覧

phpのcontrollerでjavascriptの関数を呼び出す

delicon

総合スコア2

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2021/04/19 05:34

0

0

前提・実現したいこと

PHP(laravel)で画面に入力したデータをDBに登録する画面を作っています。
登録ボタンを押下した際に確認メッセージを表示して、OKを押したら登録処理をする機能は実装できたのですが、
登録後に入力値をDBと比較して重複チェックを行い、重複時に確認メッセージを表示する機能を実装したいです。

発生している問題・エラーメッセージ

//重複データの登録確認ダイアログ function confirmCheckRepeated() { var result = confirm('入力したタレントデータは既に登録されていますが\n登録しますか?'); //「はい」の時削除 if ( result == true ) { return true; } else { return false; } }; javascript側に上記の確認ダイアログの関数を作成しました。 この関数をphpのcontroller側で呼びたいのですが、呼び出し方が分からないので、 ご教授願いたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

この関数をphpのcontroller側で呼びたいのですが、呼び出し方が分からないので

何をしたいのかがわかりません。

PHPは先にサーバ内で実行されて、その結果がブラウザに転送されてからJavaScriptを実行する、という流れなので、「ユーザー入力が必要なJavaScriptをPHPの実行途中に実行する」ということの意味が全く通りません。

投稿2021/04/19 05:38

編集2021/04/19 05:51
maisumakun

総合スコア146651

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

delicon

2021/04/19 05:42

したいことはindex.blade.phpでデザインしたボタンをボタンを押下したら phpのコントローラーで関数が呼ばれて処理が流れます。 その処理の中で、DB呼び出しを行い、DBの値を取得し、画面の入力値を比較して 条件に合致したら、確認ダイアログを表示させたいです。 javascript以外で確認ダイアログを表示できるなら、javascriptでなくてもよいです。
maisumakun

2021/04/19 05:44

「画面の入力値」とは、どのタイミングでユーザーが入力するものですか?
delicon

2021/04/19 06:17

ユーザが入力フォームに任意の値を入力し、フォーム内の登録ボタンを押下する仕様です。 なので、ユーザが入力するのは一番最初のタイミングです。
maisumakun

2021/04/19 06:20

でしたら、あるかないかチェックするルーチンを「別途」PHPで用意して、JavaScriptからそれを呼び出す、という流れで実装してください。
guest

0

ヒアドキュメントを使えば、javascirptに書かれたメッセージを飛ばしたり、ob関数で遅延制御すればロード用のアニメーションを送ったりする程度ならできます。

ただし、confirmなどのように分岐条件が入っていても処理が行われるタイミングが得られないので、この場合はAjaxなどを使って、クライアントサイド(JavaScript)の操作を優先した方が確実です。

投稿2021/04/19 07:42

FKM

総合スコア3662

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

PHPからJavascriptを呼ぶことはできません。サーバーサイドとクライアントサイドで明確に役割も階層もわかれています。

やるとしたら重複チェックなどサーバーサイドの処理はAjaxなど非同期で行うことでしょうか。
リクエスト送信もレスポンス受信とその後の処理もJavascriptで行います。

投稿2021/04/19 05:41

m.ts10806

総合スコア80888

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問