[PHP-users 25235] (無題)

zzzzzz 164 zzzzzz164 @ hotmail.com
2005年 4月 1日 (金) 18:06:06 JST


お世話になります。zanaです。
現在ラジオボタンでの選択後に条件分岐するスクリプトを製作しておりますが、if文
で製作すると私の場合(駆け出しです。)およそ、見当もつかない位の時間がかかり
ます。そこで皆様方の知恵を頂き開発時間の短縮が出来ればと思い投稿しました。よ
ろしくお願いします。

<内容>
(1)値段表示はファイルを読み込んで表示します。200.txtなら、200円と表示です。

(2)田中さんが購入した場合
たこ焼きだけを購入したら200.txtを読み込み表示。
お好み焼き&ラーメンを購入したら1000.txtを表示。
以下省略

(3)鈴木さんが購入した場合
たこ焼きだけを購入したら400.txtを読み込み表示。
お好み焼き&ラーメンを購入したら1200.txtを表示。
以下省略

(4)小林さんが購入した場合
たこ焼きだけを購入したら600.txtを読み込み表示。
お好み焼き&ラーメンを購入したら1400.txtを表示。
以下省略

0.htm
<form name="form1" method="post" action="1.php">
<input type="radio" name="a"value="0" checked> 
なし
<input type="radio" name="a" value="001">
たこ焼き 
<input type="radio" name="a" value="002">
お好み焼き
<input type="radio" name="b" value="0" checked>
なし 
<input type="radio" name="b" value="010">
ラーメン 
<input type="radio" name="b" value="011">
うどん
<input type="hidden" name="c" value="田中">
<input type="hidden" name="c" value="鈴木">
<input type="hidden" name="c" value="小林">
<input type="submit" name="Submit" value="次へ">  
</form>

1.php
(下記のようにグダグダ長い文を書いていくのはあまりにも非効率のような気がしま
すので皆様方の知恵を拝借させていただきたいと思います。あつかましくて申し訳ご
ざいません。)
<?php
if(c=="田中" && a=="001" && b=="0"){
  $file_name="200.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
  elseif(c=="田中" && a=="002" && b=="0"){
  $file_name="400.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
  elseif(c=="田中" && a=="0" && b=="010"){
  $file_name="600.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
  elseif(c=="田中" && a=="0" && b=="020"){
  $file_name="800.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
  elseif(c=="田中" && a=="001" && b=="010"){
  $file_name="800.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
  elseif(c=="田中" && a=="001" && b=="011"){
  $file_name="1000.txt";
  $file=fopen($file_name,"r") or die("OPENエラー $file_name");
  $string = fgets($file, 20);
  echo $string;
  }
以下省略
鈴木さんが購入した場合には田中さんより全商品200円UP、小林さんが購入したのな
ら全商品300円UPです。よろしくお願いします。
?>




PHP-users メーリングリストの案内