• 締切済み

一行で表示させたい。

質問は2つあります。 (1) <table border="1"> <td>日付</td> <td>曜日</td> <?php // 時間表示 while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $timeid = $row["timeid"]; $jikan = cnv_dispstr($row["jikan"]); ?> <td><?php echo $jikan ?></td> <?php } ?> </tr> <?php  $lastd = date("d", mktime(0, 0, 0, $mm + 1, 0, $yyyy)); for ($i = 1; $i <= $lastd; $i++) { $ts = mktime(0, 0, 0, $mm, $i, $yyyy); $ymd = date("Y/m/d", $ts); //予約者を表示してる $ymdstr = strftime("%Y年%m月%d日(%a)", $ts); ?> <td><?php echo $ymd ?></td> <?php //曜日表示 $aday = array("日", "月", "火", "水", "木", "金", "土"); $w = date("w", $ts); printf('<td style="color:%s;background-color:%s;"><span style = "font-size:15pt">%s</span></td>' ,$textcolor[$w],$backcolor[$w], $aday[$w]); ?> <?php// 時間ごとの予約表示 $res = mysql_query($sql, $conn) or die("データ抽出エラー"); while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $timeid = $row["timeid"]; $jikan = cnv_dispstr($row["jikan"]); $link = $_SERVER["PHP_SELF"]. "?hyouji=kousin&hiduke=".$ymd."&timeid=".$timeid; ?> <td><a href="<?php echo $link //予約者からリンクが外れる ?>"> <?php echo yoyakuchk($ymd,$timeid) ?></a></td> <?php } ?> </tr> <?php } ?> </table> を実行すると 9:00|9:30|10:00|.... 12/1 ○  ○  ○ 12/2鈴木  ○  ○ 12/3 ○ 山田 ○ と実行されます。 これを今日の日付だけを表示させたいのでうがうまくいかずに困っています。 (2)カレンダーの日付をクリックしたら、(1)の一行で表示している予約できる画面を表示させたいのこっちもうまくいかずに困っています。 例えば、 カレンダーで12月1日をクリックしたら、 9:00|9:30|10:00|.... 12/1 ○  ○  ○ が表示できるようにしたいです。 いい方法がありましたら、よろしくお願いします。

  • PHP
  • 回答数2
  • ありがとう数1

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.2

まずは、一遍に全部やらずに順番に作成しましょう。 1,まずは、htmlの基本を押さえる。 2.送信を伴うプログラムを作るには、form タグおよびそのform内要素の記述法を調べること。 htmlも入れ子構造で成り立っており、form 内部にtable全体を含める事は可能ですが、途中に入れたりしないように。 3.次に、tableのセル(tdタグ内)に、ラジオボタン要素を置いて、そのvalue値を日付数値にする。ラジオボタンのnameを全て同じにすれば、いずれかの一つの日付しか選べないように出来る。 4.このhtmlを、phpから、forループを利用して出力する。カレンダー部分は出来てるようなので、form内の要素をどう書くかを調べれば付け加えれるでしょう? さらにform内に送信ボタンを加える 5.受信側でどのようにデータを受け取るのかを調べる。 とりあえず、受信用phpプログラムを別に作る。合体させるのは、あとで考える。 phpの $_GET[], $_POST[], $REQUEST[] を調べて下さい。 6.受け取ったデータから、SQL文を作る。 SQL文の基本も知っておくこと。以下のような条件文くらいは理解して下さい。カラム名は適当です。 select column_list from table_name where column_char = 'bbb' and column_int = 1 本日や指定日付のデータ抽出は、日付カラムのデータ型によっても条件記述が微妙に異なります。 7.さらに、外から受け取るデータをSQL文に入れる時には、SQLinjection 対策が必要です。 とりあえずは、 mysqlでは、mysql_real_escape_string() でエスケープすること、文字列比較のところは、きちんと''で括ること。

fufufumi98
質問者

お礼

hrm_mmmさんお返事ありがとうございました。 今回の1~7を参考に少しずつ改良していきたいと思います。

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

>今日の日付だけを表示させたい 提示ソースにsql文が有りませんが、sql文の方で本日データのみ取ってくれば済むはずです。 >カレンダーで12月1日をクリックしたら カレンダー表示tableには、radioボタンを置いてないのですか? radioボタンのonclick でformのsubmitを行わせるか、別にsubmitボタンを作るかは、まずやれる方でやってみて下さい。 radioボタンのvalue に日付データを入れておけば、送信されてきたデータによって、sql文の日付選択条件を変更すればよいです。

fufufumi98
質問者

補足

hrm_mmmさんお返事ありがとうございます。 >提示ソースにsql文が有りませんが、sql文の方で本日データのみ取ってくれば済むはずです。 $sql = "SELECT * FROM jikan ORDER BY timeid"; $res = mysql_query($sql, $conn) or die("データ抽出エラー"); <form method="post" action="<?php echo $_SERVER["PHP_SELF"]?>"> とあるのですが、これを変更すればよいのでしょうか? >カレンダー表示tableには、radioボタンを置いてないのですか? カレンダーはこんな感じで作っているのですが・・・ <?php mb_language("ja"); mb_internal_encoding("euc-jp"); if (!$year && !$month) { $year = date("Y", $time); //今日の"年" $month = date("n", $time); //今日の"月" $day = date("j", $time); } if ($_GET["year"]) {  //"年" がGETされてきたら(表示) $year = $_GET["year"];  //GETの値を受け取って変数に割り当てる $month = $_GET["month"]; //GETの値を受け取って変数に割り当てる } if ($_GET["hyear"]) {   //"年" がGETされてきたら(表示) $year = $_GET["hyear"];  //GETの値を受け取って変数に割り当てる $month = $_GET["hmonth"]; //GETの値を受け取って変数に割り当てる $day = $_GET["hday"];  //GETの値を受け取って変数に割り当てる } $day = 1;  //"日"は 1 から始める $youbi = array("日","月","火","水","木","金","土"); //曜日を配列に入れる $you = date("w", mktime(0, 0, 0, $month, $day, $year));    //1日の曜日 $backy = $year; //前年 $backm = $month - 1; //前月 $nexty = $year; //翌年 $nextm = $month + 1; //来月 if ($backm == 0) { //もし前月が0月になったら $backy = $year - 1; //年から1を引いて前年にする $backm = 12; //12月にする } if ($nextm == 13) { //もし来月が13月になったら $nexty = $year + 1; //年に1を足して翌年にする $nextm = 1; //1月にする } ?> <html> <head><title>カレンダー</title></head> <?php print "<a><a href='./calender.php?year=" . $backy . "&month=" . $backm . "'>←先月</a>\n"; //先月をクリックしたら前月に順繰り変える URLも print $year."年".$month."月のカレンダー\n"; //表示も変える print "<a><a href='./calender.php?year=" . $nexty . "&month=" . $nextm . "'>来月→</a>\n"; //来月をクリックしたら来月に順繰り変える URLも ?> </tr> <tr> <?php print "<td bgcolor='#ffaaaa' align='center' width='100'><font size='10'><b>日</b></font></td>\n"; print "<td bgcolor='#ffffdd' align='center' width='100'><font size='10'><b>月</b></font></td>\n"; print "<td bgcolor='#ffffdd' align='center' width='100'><font size='10'><b>火</b></font></td>\n"; print "<td bgcolor='#ffffdd' align='center' width='100'><font size='10'><b>水</b></font></td>\n"; print "<td bgcolor='#ffffdd' align='center' width='100'><font size='10'><b>木</b></font></td>\n"; print "<td bgcolor='#ffffdd' align='center' width='100'><font size='10'><b>金</b></font></td>\n"; print "<td bgcolor='#ddddff' align='center' width='100'><font size='10'><b>土</b></font></td></tr>\n"; ?> </tr> <tr> <?php if ($day == 1) { //1日だったら $yo = 0; //初期値を 0 として変数 $yo を設定 for ($i = $yo; $i < $you; $i++) { //正しい曜日まで繰り返す print "<td a class='cale' valign='top'>&nbsp;</a>"; //空白セルを出力 } } $monday = 0; //初期値を 0 として変数 $yo を設定 for ($i = $day; $i < 3660; $i++) { //日付に1を足しながら3660日まで繰り返し $you = date("w", mktime(0, 0, 0, $month, $day, $year)); //曜日 if ($you == 1) { //月曜日なら$mondayに+1 $monday++; } 最近PHPをはじめたばかりなので、質問ばかりですみません。もしよろしければ、具体的にコードも教えていただければ助かります。 よろしくお願いします。

関連するQ&A

  • phpカレンダー縦型から格子型へ

    予約状況用の既存スクリプトから表示を変更させたいのですが、 変更内容は以下の通りです。(PHP+MySQL) ▼縦型から ------------------------ |1日 |○| |2日 |×| ・・・ |31日 |×| ▼カレンダー形式へ ------------------------ | |1|2|3|4|5|6| |○|×|△|○|○|×|×| |7|8|9|10|11|12|13| |○|×|△|○|○|×|×| ・・・ ------------------------------------------------ <table border="1"> <tr bgcolor="#ffd700"> <td>日付</td> <?php // 部屋表示 while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $roomid = $row["roomid"]; $roomname = cnv_dispstr($row["roomname"]); $link = $_SERVER["PHP_SELF"]."?act=det&roomid=".$roomid; ?> <td><a href="<?php echo $link?>"> <?php echo $roomname ?></a></td> <?php } ?> </tr> <?php $lastd = date("d", mktime(0, 0, 0, $mm + 1, 0, $yyyy)); for ($i = 1; $i <= $lastd; $i++) { ?> <tr> <?php $ts = mktime(0, 0, 0, $mm, $i, $yyyy); $ymd = date("Y/m/d", $ts); $ymdstr = strftime("%Y年%m月%d日(%a)", $ts); ?> <td><?php echo $ymd ?></td> <?php // 部屋ごとの予約表示 $res = mysql_query($sql, $conn) or die("データ抽出エラー"); while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $roomid = $row["roomid"]; $roomname = cnv_dispstr($row["roomname"]); $link = $_SERVER["PHP_SELF"]. "?act=upd&hiduke=".$ymd."&roomid=".$roomid; ?> <td><a href="<?php echo $link?>"> <?php echo yoyakuchk($ymd,$roomid) ?></a></td> <?php } ?> </tr> <?php } ?> </table> ------------------------------------------------ 調べたところ $lastd = date("d", mktime(0, 0, 0, $mm + 1, 0, $yyyy)); for ($i = 1; $i <= $lastd; $i++) { $days = date("d", mktime(0, 0, 0, $mm, $i, $yyyy)); $first_day = date('w', mktime(0, 0, 0, $mm, 1, $yyyy)); $last_day = date('w', mktime(0, 0, 0, $mm, $days, $yyyy)); } $last_week_days = ($days + $first_day) % 7; if ($last_week_days == 0){ $weeks = ($days + $first_day) / 7; }else{ $weeks = ceil(($days + $first_day) / 7); } 今月の日数、最初の日、最後の日の曜日、最後の週の曜日を得ればいいんだろうというところまでは分かったんですが、どう書き換えていいかわかりません。どなたか参考となるソースをご指南頂けると、とても助かります。

    • ベストアンサー
    • PHP
  • PHPのカレンダーに曜日をつけられづに困っています。

    <?php // 日付 if (!isset($hiduke)) { $hiduke = date("Y-m-d"); } if (!isset($yyyy)) { $yyyy = date("Y", strtotime($hiduke)); } if (!isset($mm)) { $mm = date("m", strtotime($hiduke)); } if (!isset($dd)) { $dd = date("d", strtotime($hiduke)); } // 表示ページ if (isset($_GET["act"])) { $act = $_GET["act"]; } if (!isset($act)) { $act = ""; } // ================================================= //  処理開始 ?> <?php conndb();?> <html> <head> <meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> <title>予約システム</title> </head> <body> <h2>予約システム</h2> <?php // -- ページ内容の表示 switch ($act) { case "upd": // 更新 gamen_upd(); break; case "updconf": // 更新確認 gamen_updconf(); break; case "delconf": // 削除確認 gamen_delconf(); break; case "det": // 詳細表示 gamen_detail(); break; default: gamen_iti(); } ?> </body> </html> <?php closedb(); ?> <?php // ================================================= // ----- 一覧表示画面 function gamen_iti() { global $conn; global $hiduke; global $yyyy; //年 global $mm; //月 $array = cnv_formstr($_POST); extract($array, EXTR_SKIP); if (isset($kbn)) { if ($kbn == "upd" or $kbn == "del") { update_yoyaku($kbn); } } $sql = "SELECT * FROM jikan ORDER BY timeid"; $res = mysql_query($sql, $conn) or die("データ抽出エラー"); ?> <form method="post" action="<?php echo $_SERVER["PHP_SELF"]?>"> <table border="1"> <tr> <td><?php setmonth(); ?></td> <td><input type="submit" name="sub" value="予約表示"></td> </tr> </table> <input type="hidden" name="act" value="iti"> <input type="hidden" name="kbn" value="go"> </form> <p><?php echo date("Y 年 m 月 ", mktime(0, 0, 0, $mm, 1, $yyyy)) ?>予約一覧 <table border="1"> <tr bgcolor="#ffd700"> <td>日付</td> <?php // 時間表示 while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $timeid = $row["timeid"]; $jikan = cnv_dispstr($row["jikan"]); ?> <td><?php echo $jikan ?></td> <?php } ?> </tr> <?php //カレンダー $lastd = date("d", mktime(0, 0, 0, $mm + 1, 0, $yyyy)); for ($i = 1; $i <= $lastd; $i++) { ?> <tr> <?php $ts = mktime(0, 0, 0, $mm, $i, $yyyy); $ymd = date("Y/m/d" ,$ts) ; $ymdstr = strftime("%Y年%m月%d日(%a)", $ts); ?> <td><?php echo $ymd ?></td> <?php   <?php } ?> </table> <?php } // ================================================= // ----- 年月選択リスト表示 function setmonth() { global $yyyy; global $mm; $array = cnv_formstr($_POST); extract($array, EXTR_SKIP); echo "<table><tr><td>"; // 年 echo "<select name=\"yyyy\">"; for ($i = 2008; $i <= 2025; $i++) { echo "<option"; if ($i == $yyyy) { echo " selected "; } echo ">$i"; } echo "</select>年"; // 月 echo "<select name=\"mm\">"; for ($i = 1; $i <= 12; $i++) { echo "<option"; if ($i == $mm) { echo " selected "; } echo ">$i"; } echo "</select>月"; echo "</td>"; echo "</tr></table>"; } ?> と参考書を見ながら、作っています。 PHPはまったくの初心者です。カレンダーの日付に曜日をつけられづに困っています。コードを含め詳しくをしえてもらえると助かります。よろしくお願いします。

    • 締切済み
    • PHP
  • phpでのhtmlタグの表示方法

    データベースのデータをphpで表示する際に echo "<table border=\"1\">"; echo "<tr>"; echo "<td>参考書名</td>"; echo "<td>解説</td>"; echo "</tr>"; while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { echo "<tr>"; echo "<td>".cnv_enc($row["publish"], $enc_disp, $enc_db)."</td>"; echo "<td>".$row["ninki"]."</td>"; echo "</tr>"; } echo "</table>"; こんな感じでechoを使って配列に格納して表示しているのですが、この際に echo "<a href="http://aaa.com/">test</a>" みたいな、URLを表示するタグを組み込むと、エラーが出ているのか、表示画面が真っ白になってしまいます。 何分初心者なもので、くだらない問題だと思いますが、色々<a href以下をいじくってもなかなか改善できません。 phpとhtmlで分けて記述すれば簡単なのですが、データを一覧表示する際に分けられるのかもちょっと分かりません。 とりあえずechoを使って<a href="">みたいなタグを表示するやり方を知りたいという感じです。 くだらない質問かと思いますが何卒よろしくお願いします。

    • ベストアンサー
    • PHP
  • 半角数字で入力されているかチェックしたいのですが。。。

    <br><br><font size="5">日付<font color = "#ff0000">(半角入力):</font>:</font> <input style=font-size="100%" width = "90" type="text" name="hiduke" size="20"></font><br> 上のログイン画面のコードで数字を入力して、 <?php //選択した日付 $_GET["hiduke"] = $hiduke; //日付の入力確認 if (!entchk($_GET)) { return; } // -- ページ内容の表示 switch ($hyouji) { default: gamen_ichiran(); } ?> </body> </html> <?php closedb(); ?> <?php // ================================================= // ----- /一覧表示画面 // ================================================= function gamen_ichiran() { global $conn; global $sinnsatuken; global $yoyakusha; global $hiduke; global $timeid; global $jikan; $array = cnv_formstr($_POST); extract($array, EXTR_SKIP); $sql = "SELECT * FROM yoyaku WHERE hiduke = '" . $hiduke . "' ORDER BY timeid, caid"; $res = mysql_query($sql, $conn) or die("データ抽出エラー"); $i = 0; while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { if ($row["yoyakusha"] != "×") { $jikan[$i] = getjikan($row["timeid"]); yoyakusha[$i] = $row["yoyakusha"]; $sinnsatuken[$i] = $row["caid"]; $i++; } } ?> <center> <font size = "5" color = "#DC143C">1日分予約確認画面</font> <br> <br><font size = "5"><font color ="#4682b4" ><b><?php print $hiduke; ?></b></font>の予約は以下のとおりです。</font> <br> <br> <table width = 600 border="1"> <td width = "150" align = "center" bgcolor="#ffd700"><font size = "5">時間</font></td> <?php for($j = 0; $j <= $i-1 ; $j++) { ?> <tr><td><center><font size = "5"><?php echo $jikan[$j] ?></font></center></td> <?php } ?> <?php } ?> </center> </font> </table> <?php // ================================================= // ----- 登録データチェック // ================================================= function entchk($array) { ?> <font size ="5" color = "#ff0000"> <?php $strerr = ""; if ($array["hiduke"] == "") { echo "<p> 日付が入力されていません!もう一度入力してください。<br><br><br>"; print "<a href = index.php>● 日付入力画面へ</a>\n"; $strerr = "1"; } if ($strerr == "1") { return FALSE; } else { return TRUE; } ?> </font> <?php } 日付を受け取る側で、半角入力されているかチェックしたいのですが、できずに困っています。 見やすいサイトや、いいやり方があったら教えてください。お願いします。

    • 締切済み
    • PHP
  • データベースの文字が???で表示される

    PHPによるwebアプリケーションスーパーサンプルという参考書のプログラム(p552)でどうしても実行できないものがあります。 やりたいことはMySQLに接続してデータを表示させるというものです。数字であるIDと年齢は表示されるのですが、文字である名前と出身地のところが「???」で表記されてしまいます。 何度も参考書のソースプログラムを見直したのですがどこが違うのか分かりません。以下は原因がありそうなコードの抜粋です。(抜粋なのでエラーと関係なさそうなコードは途中でも省略しています。) よろしくお願いします。 idはID、namは名前、preは出身地、agは年齢です。 //文字コード $enc_disp = "EUC-JP"; $enc_db = "EUC-JP"; //データの文字コードを変換する function cnv_enc($string, $to, $from){ //文字コードを変換する $det_enc=mb_detect_encoding($string, $from.",". $to); if($det_enc and $det_enc != $to){ return mb_convert_encoding($string, $to, $det_enc); } else{ return $string; } } //データを取り出す $sql="SELECT id,nam,pre,ag FROM table1 ORDER BY id"; $res=mysql_query($sql,$conn) or die("データ抽出エラー"); //取り出したデータを表示する echo "<table border=\"1\">"; echo "<tr>"; echo "<td>ID</td>"; echo "<td>名前</td>"; echo "<td>出身</td>"; echo "<td>年齢</td>"; echo "</tr>"; while($row=mysql_fetch_array($res,MYSQL_ASSOC)){ echo "<tr>"; echo "<td>".$row["id"]."</td>"; echo "<td>".cnv_enc($row["nam"], $enc_disp, $enc_db)."</td>"; echo "<td>".cnv_enc($row["pre"], $enc_disp, $enc_db)."</td>"; echo "<td>".$row["ag"]."</td>"; echo "</tr>"; } echo "</table>";

    • ベストアンサー
    • PHP
  • 文字化け

    文字コードをEUCにて統一しているにも関わらず、 結果画面をみると下記のように化けてしまいます。 原因を教えて頂きたく思います。 よろしくお願いします。 データを表示する ID 名前 出身 年齢 1 ???? ??? 30 2 ???? ??? 20 <html> <head> <title>データを表示する</title> </head> <body> <h3>データを表示する</h3> <?php // 表示文字コード $disp_enc = "EUC-JP"; // データの文字コードを変換する関数 function cnv_dbstring($string, $enc) { // 文字コードを変換する $det_enc = mb_detect_encoding($string); if ($det_enc and $det_enc != $enc) { return mb_convert_encoding($string, $enc, $det_enc); return mb_convert_encoding($string, $enc, $det_enc); } else { return $string; } [DB接続部分省略] // 取り出したデータを表示する echo "<table border=\"1\">"; echo "<tr>"; echo "<td>ID</td>"; echo "<td>名前</td>"; echo "<td>出身</td>"; echo "<td>年齢</td>"; echo "</tr>"; while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { echo "<tr>"; echo "<td>".$row["id"]."</td>"; echo "<td>".cnv_dbstring($row["nam"], $disp_enc)."</td>"; echo "<td>".cnv_dbstring($row["pre"], $disp_enc)."</td>"; echo "<td>".$row["ag"]."</td>"; echo "</tr>"; } echo "</table>"; ?> </body> </html>

    • ベストアンサー
    • PHP
  • MySQLでデータ表示

    MySQLでデータの表示を行っています 10件ずつ表示し、11件からは2ページ目に表示したいです サイトや本を見ながらデータ表示と次の10件のリンクは表示されるよう自力で頑張ったのですが 次の10件を押してもデータが変わらず1件目から10件目のままです どこが違うか教えてもらえますか。 どうコードを入力するか教えてくれたらありがたいです 一覧 ta2.phpです <html> <body> <form action = "ta2.php" method="GET"> <input type="hidden" name="page" value="0"> </form> <?php //データベースに接続 if (!$con = mysql_connect("localhost", "root", "admin")) { echo "接続エラー" ; exit ; } //データベースを選択 if (!mysql_select_db("db_test", $con)) { echo "データベース選択エラー" ; exit ; } //LIMITを使ったSELECT文を作成 $sql = "select * from tbl_test" ; $sql.= " limit " . $page*10 . ", 10" ; //SQL実行 if (!$res = mysql_query($sql)) { echo "SQLエラー<BR>" ; exit ; } //検索結果表示 echo "<table border='1'> <tr> <th>番号</th> <th>氏名</th> <th>住所</th> <th>操作</th> </tr>"; while($row = mysql_fetch_array($res)) { $ID = htmlspecialchars($row['番号']); $NAME = htmlspecialchars($row['氏名']); $ADDR = htmlspecialchars($row['住所']); echo "<tr> <td>$ID</td> <td>$NAME</td> <td>$ADDR</td> <td><a href='edit.php?番号=$ID'>修正</a> <a href='delete.php?番号=$ID'>削除</a></td></tr>"; header('content-type: text/html; charset="utf-8"'); if ($_GET) { // データがGETされていたら $page = isset($_GET['page']) ? $_GET['page'] : ''; // 取得 } } $sql = "select count(*) from tbl_test " ; if (!$res = mysql_query($sql)) { echo "SQLエラー<BR>" ; exit ; } $row = mysql_fetch_array($res) ; $cnt = $row[0] ; //ページ表示 if(!$cnt > 10) echo ceil($cnt / 10), "ページの中の", $page + 1, "ページ目を表示<br>" ; //前の10件 if ($page != 0) { echo "<a href = ta2.php?page= $page>" ; echo "&lt 前の10件" ; } //次の10件 if (($page + 1)*10 < $cnt) { echo "<a href = ta2.php?page= $page>" ; echo " 次の10件 " ; } //結果セットの開放 mysql_free_result ($res) ; //データベースから切断 mysql_close($con) ; ?> </table> </body> </html>

    • ベストアンサー
    • MySQL
  • ページ間の値の受け渡しについて

    緊急でPHPを用いて開発しなければならず、値の受渡し方法が調べても 結果がうまく出来ないために教えて下さい。 説明がうまくできないので、ソースの一部を下記に記載しております。 【keikaku.php】 <?php $link = DB接続 $query = "SELECT (1) , (2) , (3) FROM KEIKAKU WHERE 営業所= '東京'"; $res_result = mysql_query($query,$link); echo ("<form action='keikaku_input.php' method='POST'>"); while($row = mysql_fetch_array($res_result)){  echo ("<table border=1>");  echo ("<tr>");  echo ("<td><input type='radio' name='name' value=''></td>");  echo ("<td>");  echo $row['(1)'];  echo ("</td><td>");  echo $row['(2)'];  echo ("</td><td>");  echo $row['(3)'];  echo ("</td>");  echo ("</tr>"); } echo ("<input type='submit' value='次へ'>"); echo ("</form>"); ?> というSQLで一覧を表示させて、対象行のラジオボタンが選択されると (1)と(2)の値を使い、【keikaku_input.php】で更に別のSQLを実行後に 結果を表示させる事を行ないたいのです。 【keikaku.php】→【keikaku_input.php】へ(1)と(2)の値を渡したい場合 はどのようにすれば良いかご教授願えませんでしょうか?

    • ベストアンサー
    • PHP
  • データベース内容が表示されない

    <br>検索結果<br> <?php if($num_rows== 0){ $message="該当するデータはありませんでした"; } else $message=$num_rows ."件ヒットしました"; echo $message; ?> <br> <?php while($row = mysql_fetch_array($result));?> <br> <?php echo"{$row['tiiki']}"; ?> <?php print"<td>{$row['syoku']}</td>"; ?> <?php print"<td>{$row['koyou']}</td>"; ?> <?php print"<td>{$row['kai']}</td>"; ?> <br> <a href="html.html">再検索</a> とすると、三件ヒットしました、などは表示されますが、肝心のtiiki,syoku等の情報が表示されず、空白のままです。記述ミス等ありますでしょうか??

    • ベストアンサー
    • PHP
  • フォームのボタンが表示されない

    PHP初心者です。 下のコードは「お友だちリスト」を表示させ、リストの中から「お友だちの詳細を見る」または「メールを送信する」を選択させようというものです。 「お友だちの詳細を見る」では、「詳細(GET)コンボ」をクリックし、GETでIDを次画面に渡します。 「メールを送信する」では、Form内の「このお友だちを選択」ボタンをクリックさせて、次画面にPOSTでIDを送ろうというものです。 ところが、「このお友だちを選択」ボタンが画面に表示されません。 コード上のどこに問題があるのか教えて下さい。 また、このケースでは、操作する人の判断によって遷移する次画面を選択するわけですが、GETとPOSTを使い分けることによって実現しようと考えましたが、他にもよい方法があったら教えて下さい。 よろしくお願いします。 while($row = mysql_fetch_array($res)){ echo("<tr>"); echo("<td>".$row["customer_id"]."</td>"); echo("<td>".$row["customer_name"]."</td>"); echo("<td>".$row["customer_nicname"]."</td>"); echo("<td>".$row["phone"]."</td>"); echo("<td>".$row["mail_1"]."</td>"); echo("<td>".$row["status"]."</td>"); echo("<td><a href=\"indicate_detail.php?id=" .$id."\">詳細(GET)コンボ</a></td>"); echo '<form action="mail_message.php" method="post">'; echo '<input type="hidden" name="customer_id" value="' .$id.' />'; echo '<td><input type="submit" name="choice" value="このお友だちを選択" /></td>'; echo '</form">'; echo("</tr>\n"); }

    • ベストアンサー
    • PHP

専門家に質問してみよう