いつもお世話になっています。
Smartyに関して質問します。
以下のようなtemplateがあった場合に、
<html>
<head><title></title>
</head>
<body>
<selection name="hobby">
<option name="hobby[]" value="0" >スポーツ</option>
<option name="hobby[]" value="1">卓球</option>
</selection>
<div id ="hobby_details">ここに、選択された値により表示する内容を変える
</div>
</body>
</html>
セレクトが選択されたら、それをキーにdbに接続して値をとってき、
再度<div></div>内部に値を表示することはできないのでしょうか?
その場合として、pluginクラスを作って表示することはできないのでしょうか?
したいのが、セレクトボックスが選択されたときに、<div></div>内に値を表示したいのです。
宜しくお願いします。
No.2ベストアンサー
- 回答日時:
あまり難しく考えなくても
選択する度にPHP内でDB接続をして値をとってきて
テンプレート内に表示することは可能です
質問者さんのPHP内のデータベース接続が
どういった記述なのかわからないので
データベース接続部分は省略していますが
そちらもわからないようであれば
補足もしくは別に質問するのがいいでしょう
簡単な手ほどき的なものになりますが
更新させるためのサンプルを作ってみましたので
やってみてください
PHPとSmartyを使用しているのであれば理解できる内容です
テンプレートの記述(index.tplとして作成してみました)
<html>
<head>
<title>test</title>
<body>
<form method="post" action="index.php">
<select name="hobby" onChange="submit(this.form)">
<option>スポーツ</option>
<option value="0">卓球</option>
<option value="1">サッカー</option>
<option value="2">バレー</option>
<option value="3">リセット</option>
</select>
</form>
<div>
{if isset($str)}
{$str}
{/if}
</div>
</body>
</html>
php内の記述
if(isset($_POST['hobby'])){
#本来ならswitch文の内容はいらなく
#DBから値をもってきてテンプレートに送るだけの処理になります
switch ($_POST['hobby']){
case 0:
$smarty -> assign('str', '卓球');
break;
case 1:
$smarty -> assign('str', 'サッカー');
break;
case 2:
$smarty -> assign('str', 'バレー');
break;
}
}
$smarty -> display("index.tpl");
No.1
- 回答日時:
それはPHPでもSmartyでもなくJavaScriptの分野だと思います。
参考URLはjQueryのものですが、一番下にサンプルがありSELECTタグの選択値に応じてDIVの内容を変更してます。
> セレクトが選択されたら、それをキーにdbに接続して値をとってき、
をしたいならAjaxで取ってくるか、あらかじめDBの値をHTMLに書き出しておく必要があるので難易度が上がります。
まずはSELECTの切り替えでDIVを入れ替えるとこまで実装するのが良いでしょう。
それと、
><selection name="hobby">
selectionじゃなくてselectの間違いだと思います。
参考URL:http://semooh.jp/jquery/api/events/change/fn/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<select>文、foreachと初期値設定
-
Smartyで、セレクトボックスが...
-
phpでのセレクトボックスの値を...
-
【PHP&JavaScript】複数の別ウ...
-
phpのプルダウンメニューで選ん...
-
チェックボックス&セレクトボ...
-
このPHP記述を修正願います
-
HTMLで前の画面に戻る時、入力...
-
チェックボックスのvalueに変数...
-
フォームへの前回入力値をクリ...
-
<input type="hidden" >で配列...
-
パラメーターを隠す
-
PHPで画像の渡しが上手く行きま...
-
入力フォーム→確認画面→送信画...
-
フォームのテキストボックスに...
-
PHPでファイルアップロード時に...
-
smartyでチェックボックスをチ...
-
PHPで郵便番号を検索し、住所を...
-
phpのカウンタのリセット方法
-
input nameで日本語を使うと
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
連動させたいセレクトボックス...
-
<select>文、foreachと初期値設定
-
2つのプルダウンメニュから受け...
-
セレクトしたときに全て初期状...
-
【PHP&JavaScript】複数の別ウ...
-
プルダウンで選択された値を保持
-
ループでチェックボックスにche...
-
MySQLのレコードを検索、...
-
チェックボックスで渡ってきた...
-
複数のセレクトボックスで
-
phpでのselect値の取得・表記に...
-
データベースから年月日を抽出...
-
phpで重複チェック
-
「"」(ダブルクォーテーション)...
-
複数 selectフォームから今回on...
-
[Ethna]selectボックスに空値を...
-
PHP プルダウンメニュー MYSQL
-
PHP で画面の一部だけを変えたい。
-
phpでのセレクトボックスの値を...
-
チェックボックス&セレクトボ...
おすすめ情報