• ベストアンサー

PHPのプルダウン式のジャンプ設置方法

自作携帯サイトにPHPでプルダウンでのジャンプ先選択フォームを作成したいと考えております。 こちらで過去回答を探したところ、以下のようなご回答をなされた方がおられました。こちらを参考にして、すこし変更したいのです。 ************************************************** 1,define.inc -> URLを記述する設定ファイル 2,index.php -> HTML部分の表示ファイル 3,jump.php -> index.phpで受け取ったURLにロケーション 下記3つのファイルは全て同一ディレクトリに設置する事で動作するようにしてあります。 define.inc ----------------- <?PHP $url[] = "http://google.co.jp"; $url[] = "http://yahoo.co.jp"; $url[] = "http://surf-style.us"; ?> index.php -------------------- <html> <head> <title>Test</title> <body> <form method="post" action="jump.php"> <select name="jump_url"> <?PHP include("./define.inc"); while ( $url[key($url)] != "" ) { print "<option value=\"".$url[key($url)]."\">".$url[key($url)]."</option>\n"; next($url); } ?> </select> <input type="submit" value="ジャンプ"> </form> </body> </html> jump.php -------------------- <?PHP $jump_url = $_POST['jump_url']; header("Location:{$jump_url}"); ?> ************************************************** <変更したい点> このままですとプルダウンに表示されるのが、http://google.co.jp http://yahoo.co.jp http://surf-style.us などのURLになってしまいます。 それを グーグル ヤフー サーフスタイル のようにサイト名で表示させたいのです。 お手数ですが、お詳しい方がおられましたら、 何卒ご教授お願い申し上げます。

質問者が選んだベストアンサー

  • ベストアンサー
  • awazak
  • ベストアンサー率36% (61/165)
回答No.2

No.1さんのやり方でも可能ですが、配列のキーに日本語はあまりいいとはいえません。 <? $data = array( array( 'name' => 'グーグル', 'url' => 'http://google.co.jp'), array( 'name' => 'ヤフー', 'url' => 'http://yahoo.co.jp'), array( 'name' => 'サーフ', 'url' => 'http://surf-style.us') ); foreach( $data as $key => $val){ print "<option value=\"".$val['url']."\">".$val['name']."</option>\n"; } ?> このようにした方が、いいと思います。

saburo13
質問者

お礼

ご回答まことにありがとうございます。 ひじょうにご丁寧にご教授いただき たいへん感謝しております。 ありがとうございました。

その他の回答 (1)

  • umota
  • ベストアンサー率46% (150/324)
回答No.1

キー付き配列で可能かと、、、 $url[] = "グーグル"=>"http://google.co.jp"; ... foreach( $url as $jump_title => $jump_url){ ... }

saburo13
質問者

お礼

ご回答まことにありがとうございます。 とても希求していた記述方法でしたので ひじょうにありがたく存じます。 さっそく参考にさせていただきます。

関連するQ&A