- 締切済み
値が別窓に渡せない
今故あってPHPの勉強をしているのですが 別窓に値を渡す方法がぜんぜん検討がつかないので質問させてください。 要点=OKボタンが押された時社員ナンバーを左から見て一致部分一致 した社員データを親窓内で表示させその後表示させた社員データを クリックすると別窓で詳細を表示させる。 別窓内で別のSQL文を組んでそれで社員データを表示させる なにぶんこのようなサイトを利用するのは初めてです。 乱筆乱文にて失礼いたします。 親窓ソースは以下の通り <haed> <title>データ詳細</title> </haed> <body BGCOLOR="#55FFFF"> <form action = "no_rist5.php" method = "post"> <?php $str_url = "********"; $str_user = "********"; $str_pass = "********"; $str_db = "********"; $link = mysql_connect($str_url, $str_user, $str_pass); if ($link == false) { die("MySQLの接続に失敗しました。"); } //dbを選択 $sdb = mysql_select_db($str_db, $link)or die("データベース選択に失敗しました。"); print'<p><Meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">'; $n_01_key = $_POST["a_key"];//01 $n_02_key = $_POST["b_key"];//02 $n_03_key = $_POST["c_key"];//03 $n_04_key = $_POST["d_key"];//04 print "社員コード"; print '<input name="a_key" type = "text" style = "ime-mode:disabled" size = "5" MAXlength = "5" value="'.$n_01_key.'">'; print '<input name="b_key" type = "submit" value="OK"><br>'; print '社員コード、社員名'; print '<br>'; if($n_02_key=="OK") { if(empty($n_01_key)) { print '<br><font size=3 color="#FF0000">社員コードが入力されていません。</font>'; } else { if(!preg_match("/^[0-9]*$/",$n_01_key)) { print '<br><font color="#FF0000">社員コードに数字以外の値が入力されました。</font>'; } else { $a_sql = "SELECT number FROM no_rist WHERE number LIKE '$n_01_key%' ORDER BY number"; $b_sql = "SELECT enp_name FROM no_rist WHERE number LIKE '$n_01_key%' ORDER BY number"; $rs1 = mysql_query($a_sql,$link)or die(mysql_error()); $rs2 = mysql_query($b_sql,$link)or die(mysql_error()); if($rs1!=NULL) { while($arr_item1 = mysql_fetch_assoc($rs1) and $arr_item2 = mysql_fetch_assoc($rs2)) { foreach($arr_item1 as $key1 => $n_03_key) { foreach($arr_item2 as $key2 => $n_04_key) { print '<a href="http://localhost/no_rist6.php" target="rist">'; print '<input name="c_key" type = "submit" value="'.$n_03_key.'">'; print '</a>'; print '<font color="#55FFFF">■■</font>'; print $n_04_key; } } print "<br>\n"; } } else { print '<br><font size=3 color="#ff0000">社員データがありません。</font>'; } } } } print "\n"; mysql_close($link); ?> </form> </body> </html>
お礼
なるほど、列挙させて表示させる部分と詳細を表示させる部分を 完全に別々の関数で処理すれば良いって事ですね? なるほど、そこは自分1人では思いつきませんでした。 色々に参考にします。 ありがとうございました。
補足
少々言葉足らずな部分有ったので補足します 親窓(メイン表示部分)=no_rist5.php 小窓(値を渡したい窓部分)=no_rist6.php つまり親窓(no_rist5.php)でデータの概要を列挙させて その中で列挙させたデータの中から1個を選択して それのDB上のプライマリキー部分(この場合のカラム名はnumber) の値を1つだけを独立した子窓(no_rist6.php)に渡して 詳細を表示させたいと言う意味だったのですが・・・ 言葉足らずで申し訳ありませんでした。