• ベストアンサー

データ検索のエラーについて

http://oshiete1.goo.ne.jp/qa3583661.htmlの質問の続きなのですが、条件分岐による検索のプログラムを書きたいのですが、 Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\iiko.php on line 61 というエラーが起こってしまいました。 いろいろとPHPのサイトを見て回って考えたのですが、解決策がわかりません。 フォームの構造は <html> <head> <title>abcde</title> </head> <body> <FONT size="4">abcde</FONT> <form action="iiko.php" method="post"> a<br> <br> ある<INPUT type="radio" name="a" value="ある"><br> ない<INPUT type="radio" name="a" value="ない"><br> <br> b<br> <br> ある<INPUT type="radio" name="b" value="ある"><br> 少しある<INPUT type="radio" name="b" value="すこしある"><br> ない<INPUT type="radio" name="b" value="ない"><br> <br> c<BR> ある<INPUT type="radio" name="c" value="ある"><BR> ない<INPUT type="radio" name="c" value="ない"><BR> <BR> d<br> ある<INPUT type="radio" name="d" value="ある"><br> ない<INPUT type="radio" name="d" value="ない"><br> <br> e<br> ある<INPUT type="radio" name="e" value="ある"><br> ない<INPUT type="radio" name="e" value="ない"><br> <br> <input type="submit" name="bottun1" value="送信"> </form> </body> </html> 検索リストのiiko.phpは、条件を選択すれば、デーブルのデータのID2~4番の人を表示させ様としています。 <html> <body> <?php $a_1 = $_POST["a"]; $b_1 = $_POST["b"]; $c_1 = $_POST["c"]; $d_1 = $_POST["d"]; $e_1 = $_POST["e"]; require_once("DB.php"); $dbUser = "sample"; $dbPass = "password"; $dbHost = "localhost"; $dbName = "sampledb"; $dbType = "mysql"; $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; $conn = DB::connect($dsn); //接続にしっぱいしたらメッセージを表示して終了します。 if (DB::isError($conn)) { die($conn->getMessage()); } $sql = <<<EOS SELECT * FROM member if($a_1 == "ある"and $b_1 == "ある"and $c_1 == "ない"and $d_1 == "ある" $e_1== "ある") { $sql = $sql . " WHERE id BETWEEN 2 AND 4;"; } $result = $conn->query($sql); if (DB::isError($result)) { die($result->getMessage()); } $count = $result->numRows(); print "検索結果は".$count."件です。<BR>"; if($count>0){ ?> <TABLE width="450" border="1" cellspacing="0" cellpadding="8"> <TBODY> <TR><TH>番号</TH><TH>氏</TH><TH>名</TH><TH>年齢</TH></TR> <?php while($rs = $result->fetchRow(DB_FETCHMODE_ASSOC)) { ?> <TR><TD align="center"><?=$rs['id']?></TD> <TD><?=$rs['last_name']?></TD> <TD><?=$rs['first_name']?></TD> <TD align="center"><?=$rs['age']?></TD></TR> <?php } ?> </TBODY></TABLE> <?php } $result->free(); $conn->disconnect(); ?> </body> </html> です。 解決策を教えて下さい。 よろしくお願いします。

  • PHP
  • 回答数6
  • ありがとう数10

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

  • ベストアンサー
回答No.3

exit;の処理はご存知の通り、そこで処理を終了するということです。 つまり、処理を終了させた場所までのソースに画面表示系のものがない場合、画面は真っ白になります。 しかし、画面が真っ白=エラーも出ていない、ということになるので、そこまでのソースに問題はないということにもなりますね。 > DB Error: syntax error このエラーはSQLの文法ミスの場合に出ます。 SQLの作成が終わったら、 echo $sql; exit; を書いてSQL文の表示をして確認をしてみると、何か解決につながるかもしれませんよ。

taku3510
質問者

お礼

回答ありがとうございます。 参考にさせていただきます。

その他の回答 (5)

回答No.6

32行目のif文ですが、エラーの通り、中に『;』がありますね。 if文の判定部分にあってはならない文字なので、消しましょう。 それと、SQLを使わない判別の時は~とおっしゃってますが、SQLはこのソースでは最初から使われています。 SQLの意味やif文の基本的な書き方がわからないようですし、もしかするとtaku3510さんにはまだ、このコーディングは難しいかもしれません。 もう少し簡単なプログラミングから始めると、きっと上達も早いと思いますよ。

taku3510
質問者

お礼

回答ありがとうございます。 そうですね。自分でもちょっと難しいかなっと思っているのですが、本一冊だけを参考には限界があります。 今回はなんとか動くようになりましたが、もっと難しいのになるとしんどいですね。 アドバイスありがとうございました。

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.5

if($a_1 == "ある" and $b_1 == "ある" and $c_1 == "ない" and $d_1 == "ある" and $e_1== "ある";) 条件の最後に ; が・・

taku3510
質問者

お礼

回答ありがとうございます。 見落としてました。

回答No.4

連投になって申し訳ないのですが、ソースを見てふと思ったので。 >$sql = <<<EOS >SELECT * FROM member この部分ですが、ヒアドキュメントを使わずに、普通に $sql = "SELECT * FROM member"; と書いてもよいのではないでしょうか。 もちろん、追加した『EOS;』も外してください。 今の状態だと、SQLの中にif文が入ってしまっているような気がします。

taku3510
質問者

お礼

いえいえ、アドバイスありがとうございます。 早速プログラムを書き換えてみます。

taku3510
質問者

補足

プログラムを変えてみると、Parse error: syntax error, unexpected ';' in C:\xampp\htdocs\iiko.php on line 32とエラーが出てきました。 if (DB::isError($conn)) { die($conn->getMessage()); } $sql = "SELECT * FROM member"; ※if($a_1 == "ある" and $b_1 == "ある" and $c_1 == "ない" and $d_1 == "ある" and $e_1== "ある";)※ { $sql = $sql . " WHERE id BETWEEN 2 AND 4;"; } $result = $conn->query($sql); if (DB::isError($result)) { die($result->getMessage()); } 32は※の行なので、IF文がおかしいみたいです。 SQLを使わない判別の時は、このIF文で動いたのですが、SQLを使う時は、何か変えなければいけないのでしょうか?

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

> DB Error: syntax error その名の通りDBのエラーでしょう。 connect, query, fetch のどこでエラーが出ているのか exitで止めたりしながらまずは発生箇所を見極めてください。 デバッグはコードの上達に不可欠だと思いますよ。

taku3510
質問者

お礼

回答ありがとうございます。 いろいろと確認してみます。

taku3510
質問者

補足

exitを書きながら進めていくと、 $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; $conn = DB::connect($dsn); ※exit;※ $sql = <<<EOS SELECT * FROM member と、 $sql = <<<EOS SELECT * FROM member if($a_1 == "ある"and $b_1 == "ある"and $c_1 == "ない"and $d_1 == "ある" $e_1== "ある") { $sql = $sql." WHERE id BETWEEN 2 AND 4;"; EOS; ※exit;※ $result = $conn->query($sql); if (DB::isError($result)) { die($result->getMessage()); } の二箇所でエラーも何も表示されずに、真っ白になりました。 これは、何をあらわしているのでしょうか?

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>on line 61 61行目にエラーがあると書いてあります。 60行目のけつに「;」をつけ忘れている可能性があります

taku3510
質問者

お礼

回答ありがとうございます。 61行目というう事は※のところがおかしいって事ですよね? <?php while($rs = $result->fetchRow(DB_FETCHMODE_ASSOC)) { ?> ※<TR><TD align="center"><?=$rs['id']?></TD>※ <TD><?=$rs['last_name']?></TD> <TD><?=$rs['first_name']?></TD> <TD align="center"><?=$rs['age']?></TD></TR> <?php } ?> </TBODY></TABLE> <?php } $result->free(); $conn->disconnect(); ?> </body> </html> ?>の前などに「;」をつけて見てもエラーが消えません。 「;」をつけるところが間違っているのでしょうか? 根本的に※から下のプログラムの構造がおかしいのでしょうか?

taku3510
質問者

補足

プログラムを以下の※の部分を加えるとParse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\iiko.php on line 61 が消えました。 if($a_1 == "ある"and $b_1 == "ある"and $c_1 == "ない"and $d_1 == "ある" $e_1== "ある") { $sql = $sql . " WHERE id BETWEEN 2 AND 4;"; ※EOS;※ しかし、DB Error: syntax errorという画面が表示されてしまいました。これは、どこがおかしいのでしょうか? 解決策を教えてください。 よろしくおねがいします。

関連するQ&A

  • PHP+MySQLの「データを検索して表示する」について

    名前を入れて検索すると、このように下記の様に表示されてしまいます。 Parse error: syntax error, unexpected '>' in C:\xampp\htdocs\list.php on line 52 検索フォームのsearch.phpは <HTML> <HEAD> <TITLE>検索テスト</TITLE> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </HEAD> <BODY bgcolor="#FFFFFF"text="#000000"> <FONT size="4">検索テスト</FONT> <FORM name="form1" method="post" action="list.php"> 名前;<BR> <INPUT type="text" name="search_key"> <BR> <INPUT type="submit" value="検索"> </FORM> </BODY> </HTML> です。 データ検索のlist.phpは <HTML> <HEAD> <TITLE>検索テスト</TITLE> </HEAD> <BODY> <?php require_once("DB.php"); $dbUser = "sample"; $dbPass = "password"; $dbHost = "localhost"; $dbName = "sampledb"; $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; $conn = DB::connect($dsn); //接続にしっぱいしたらメッセージを表示して終了します。 if (DB::isError($conn)) { die($conn->getMessage()); } //POSTされたデータを受け取り、エスケープします。 $search_key =addslashes($_POST['search_key']); $sql = <<<EOS SELECT * FROM member WHERE last_name like'%$search_key%' OR first_name like'%$search_key%' EOS; if(preg_match("/Windows/",$_ENV["OS"])){ $sql = mb_convert_encoding($sql,"SJIS","EUC-JP"); } $result = $conn->query($sql); if (DB::isError($result)) { die($result->getMessage()); } $count = $result->numRows(); print"検索結果は".$count."件です。"<BR>"; if($count>0){ ?> <TABLE width="450" border="1" cellspacing="0" cellpadding="8"> <TBODY> <TR><TH>番号</TH><TH>氏</TH><TH>名</TH><TH>年齢</TH></TR> <?php while($rs = $result->fetchRow(DB_FETCHMODE_ASSOC)) { if(preg_match("/Windows/",$_ENV["OS"])){ $rs['last_name'] = mb_convert_encoding( $rs['last_name'],"EUC-JP","SJIS"); $rs['first_name'] = mb_convert_encoding( $rs['first_name'],"EUC-JP","SJIS"); } ?> <TR><TD align="center"><?=$rs['id']?></TD> <TD><?=$rs['last_name']?></TD> <TD><?=$rs['first_name']?></TD> <TD align="center"><?=$rs['age']?></TD></TR> <?php } $result->free(); $conn->disconnect(); ?> </BODY> </HTML> です。 「速効!図解プログラミングPHP+MySQL」を見ながら、その通りに書いたのですが動きませんでした。 XAMPPを使って作っています。 長々と失礼しましたが、どうか解決策を教えてください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • php + mysql でフォーム作成時のエラー

    データベースから取り出したデータをラジオボタンで選択し、それをデータベース(別のテーブル)に追加させる機能を作りたいです。 非常に初歩的なことだとは思うのですがご教授ください。 MySQL 4.0.27 PHP 5.2.11 <FORM ACTION="cone3.php" METHOD="post"> <?php $srv = ""; // サーバー名 $id = ""; // ユーザーID $passwd = "; // パスワード $dbn = ""; // データベース名 $sql = "SELECT code, lname, lecturer, kind, gradetype FROM Lecture"; // SQL文 // データベースに接続する $db = mysql_connect($srv,$id,$passwd); mysql_select_db($dbn,$db); $rs = mysql_query($sql,$db); //--- テーブルのレイアウト --- 開始 -----------------------> print("<TABLE><TR>"); print("<TR><th> </th><th>講義名</th><th>教員</th><th>科目区分</th><th>配当学年</th></tr>"); while($row = mysql_fetch_array($rs)) { print '<tr><td><input type="radio" name="regist" value="$row['code']"></td>'; print '<td>' . $row['lname'] . '</td>'; print '<td>' . $row['lecturer'] . '</td>'; print '<td>' . $row['kind'] . '</td>'; print '<td>' . $row['gradetype'] . '</td>'; print '</tr>'; print ("</TR>"); } print("</TABLE>"); print_r($_POST); echo "<br />\n"; mysql_free_result($rs); mysql_close($db); //--- 終了 ---> ?> <input type="submit" name="submit" value="送信"> </form> 以上のようなソースでラジオボタンで配列の$row[code]の値を送りたいんですがうまくいきません。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • ラジオボタンで入力し、その結果をCGIで表示するプログラム

    htmlで <html> <head> </head> <body> <form method="get" action="question.cgi"> <table width="50" height="" border="1" bordercolor="black" bgcolor="white" cellSpacing="0" cellpadding="5"> <tr><th>/</th><th>yes</th><th>no</th></tr> <tr><th>1</th><td><input type="radio" name="char1"></td> <td><input type="radio" name="char1"></td></tr><br> <tr><th>2</th><td><input type="radio" name="char2"></td> <td><input type="radio" name="char2"></td></tr><br> <tr><th>3</th><td><input type="radio" name="char3"></td> <td><input type="radio" name="char3"></td></tr><br> <tr><th>4</th><td><input type="radio" name="char4"></td> <td><input type="radio" name="char4"></td></tr><br> </table> <input type="button" value="送信" ><input type="reset" value="リセット"><br> </form> </body> </html> と書き、C言語でCGIを書き、ラジオボタンを押して送信ボタンを押すと 1:yes,2:no,3:no,4:yesなどと文字列で出力したいのです。 getメソッドがいいのかpostメソッドいいのかも教えていただければうれしく思います。 (この質問ではgetメソッドを使っていますが、あまり気にしないでください)

    • ベストアンサー
    • CGI
  • PHP 検索PG

    いつもお世話になっております。 PHP勉強中の初心者です。今回検索PGの作成を試みているのですがうまく検索されません。わかる人がいましたらお力を貸して下さい。 ------------------------------- 環境 レンタルサーバー:カゴヤ PHP 5.2.6 Apache/1.3.41 MySQLバージョン 5.0.33 -------------PHP----------------- <?php $debug = false; //DB接続 require_once("DB.php"); // データベースとの接続情報を記述 //$dsn ="mysql://ユーザー名:pw@localhost/データベース名"; //$db =DB::connect($dsn); if($debug) print_r($HTTP_POST_VARS); //クエリ生成 $query = "SELECT * FROM search "; //検索条件生成 //名前 if(!empty($name)) { $name = addslashes($name); $where = "name = '$name'"; } 住所 if(!empty($address)) { $address = addslashes($address); $where .= "address REGEXP '$address' && "; } //性別 if(!empty($gender)) { $gender = addslashes($gender); $where .= "gender = '$gender' && "; } //スキル if(!empty($skill)) { foreach($skill as $value) { $value = addslashes($value); $temp_where .= "skill REGEXP '$value' || "; } $temp_where = substr($temp_where, 0, -4); $where .= "(". $temp_where. ") && "; } if(!empty($where)) { $where = substr($where, 0, -4); $where = "WHERE " . $where; } $query .= $where; if($debug) { print "<BR><BR>"; print $query; } $result = mysql_query($query); $num_rows = mysql_num_rows($result); if($num_rows == 0) $message = "該当するデータはありませんでした"; else $message = $num_rows . "件ヒットしました"; ?> 検索結果<br> <?=$message?> <table border=1> <tr><td>名前</td><td>住所</td><td>性別</td><td>スキル</td></tr> <? while($row = mysql_fetch_assoc($result)): ?> <tr><td><?=$row[name]?></td><td><?=$row[address]?></td><td><?=$row[gender]?></td><td><?=$row[skill]?></td></tr> <? endwhile; ?> </table> <a href="input.html">再検索</a> ------------------------------- ----------html----------------- <html> <body bgcolor="#FFFFFF" text="#000000"> <form name="" method="POST" action="search.php"> 検索条件を指定してください<br> <table width="500" border="1" cellspacing="1" cellpadding="0"> <tr> <td>名前</td> <td> <input type="text" name="name" size="40" maxlength="255"> </td> </tr> <tr> <td>住所</td> <td> <input type="text" name="address" size="40" maxlength="255"> </td> </tr> <tr> <td>性別</td> <td> <input type="radio" name="gender" value="男性"> 男性  <br> <input type="radio" name="gender" value="女性"> 女性<br> <input type="radio" name="gender" value="その他"> その他</td> </tr> <tr> <td>スキル</td> <td> <input type="checkbox" name="skill[0]" value="ワープロ"> ワープロ<br> <input type="checkbox" name="skill[1]" value="表計算"> 表計算<br> <input type="checkbox" name="skill[2]" value="プログラミング"> プログラミング<br> <input type="checkbox" name="skill[3]" value="営業"> 営業<br> <input type="checkbox" name="skill[4]" value="音楽"> 音楽</td> </tr> </table> <input type="submit" name="submit" value="検索"> <input type="reset" value="条件クリア"> </form> </body> </html> --------------------------------------------------- 名前で検索した際に違う名前でも全件表示されてしまいます。 完全に一致したら表示させたいのですがやりかたがわかりません。 だれかわかるかたいらっしゃいましたらご教授よろしくお願い 致します。

    • 締切済み
    • PHP
  • データの受け渡し(表内に収めたいのですが)

    phpで表から表へデータを飛ばし表示させようとしています。 例 ___________________ |_A___|__B___|___C__| |_____|______|_______| ↓ ___________________ |_A___|__B___|___C__| |_____|______|_______| 例えば、下記のようなソースsample.php→sample4.php を作りました。 データは飛ばすことが出来ますが、表内に収める場合 どのようにすればよいですか? ちなみに、YPHPSampleは、ソースがおいてあるディレクトリです。 (1)sample.php <html> <head> <title>サンプル</title> <head> <body> <table border="2"> <tr bgcolor="#AAAAAA"> <td><th>都市名</th></td> <td><th>最高気温</th></td> <td><th>最低気温</th></td> </tr> <tr bgcolor="#AAAAAA"> <td><th> <form action="http://localhost/YPHPSample/sample4.php" method="post"> <input type="text" name="aut"/> </th></td> <td><th> <form action="http://localhost/YPHPSample/sample4.php" method="post"> <input type="text" name="soft"/> </th></td> <td><th> <form action="http://localhost/YPHPSample/sample4.php" method="post"> <input type="text" name="hard"/> </th></td> </tr> </table> <input type="submit" value="送信"/> </form> </body> </html> (2)sample4.php <html> <head> <title>サンプル</title> </head> <body> <table border="2"> <tr bgcolor="#AAAAAA"> <td><th>都市名</th></td> <td><th>最高気温</th></td> <td><th>最低気温</th></td> </tr> </table> <?php if($_POST["aut"]) print"{$_POST["aut"]}<br/>\n"; if($_POST["soft"]) print"{$_POST["soft"]}<br/>\n"; if($_POST["hard"]) print"{$_POST["hard"]}<br/>\n"; ?> </body> </html>

    • 締切済み
    • PHP
  • 教えてください

    <form action="chackbox.php" method="post"> <table> <tr> <th>1</th><th>2</th><th>3</th><th>4</th> </tr> <tr> <td><input type="radio" name="R1" value="1"></td> <td><input type="radio" name="R1" value="2"></td> <td><input type="radio" name="R1" value="3"></td> <td><input type="radio" name="R1" value="4"></td> </tr> <tr> <td><input type="radio" name="R2" value="1"></td> <td><input type="radio" name="R2" value="2"></td> <td><input type="radio" name="R2" value="3"></td> <td><input type="radio" name="R2" value="4"></td> </tr> <tr> <td><input type="radio" name="R3" value="1"></td> <td><input type="radio" name="R3" value="2"></td> <td><input type="radio" name="R3" value="3"></td> <td><input type="radio" name="R3" value="4"></td> </tr> <tr> <td><input type="radio" name="R4" value="1"></td> <td><input type="radio" name="R4" value="2"></td> <td><input type="radio" name="R4" value="3"></td> <td><input type="radio" name="R4" value="4"></td> </tr> <tr> <td><input type="radio" name="R5" value="1"></td> <td><input type="radio" name="R5" value="2"></td> <td><input type="radio" name="R5" value="3"></td> <td><input type="radio" name="R5" value="4"></td> </tr> <tr> <td><input type="radio" name="R6" value="1"></td> <td><input type="radio" name="R6" value="2"></td> <td><input type="radio" name="R6" value="3"></td> <td><input type="radio" name="R6" value="4"></td> </tr> <tr> <td><input type="radio" name="R7" value="1"></td> <td><input type="radio" name="R7" value="2"></td> <td><input type="radio" name="R7" value="3"></td> <td><input type="radio" name="R7" value="4"></td> </tr> <tr> <td><input type="radio" name="R8" value="1"></td> <td><input type="radio" name="R8" value="2"></td> <td><input type="radio" name="R8" value="3"></td> <td><input type="radio" name="R8" value="4"></td> </tr> <tr> <td><input type="radio" name="R9" value="1"></td> <td><input type="radio" name="R9" value="2"></td> <td><input type="radio" name="R9" value="3"></td> <td><input type="radio" name="R9" value="4"></td> </tr> <tr> <td><input type="radio" name="R10" value="1"></td> <td><input type="radio" name="R10" value="2"></td> <td><input type="radio" name="R10" value="3"></td> <td><input type="radio" name="R10" value="4"></td> </tr> </table> <input type="submit" value="点数の計算、タイプを決定します"> ここのsubmitボタンを押したときに、nameのR1+R5+R10のvalue1から4の合計の足し算をした後に11を引く処理をしたいです。ここが間違っていたら、JavaScriptやPHP、どちらでもいいんで、処理のコードを教えてくださいお願いします ▼ 点数 =11-(設問R1+R5+R10であなたが丸をつけた数字の合計点) (  点)

  • phpとmysqlの検索システムを作成しているのですが

    半角英数字で検索すると、ちゃんと検索できるのですが、日本語や全角で検索しようとすると 接続ID=Resource id #2データベースを選択しました Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\php.php on line 54 検索結果 該当するデータはありませんでした 名前 メーカー Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\php.php on line 69 と出てしまいます。 phpのソース <html> <head> <title>検索結果</title> <meta http-equiv="Content-Type" content="text/html;charset=eucjp"> </head> <body> <?php $con=mysql_connect("","root",""); if(!$con){ echo ("MYSQL接続に失敗しました"); exit(); } else { echo ("接続ID=$con"); } mysql_query("SET NAMES sjis") or die("can not SET NAMES sjis"); $db=mysql_select_db("a05"); if(!$db) { echo ("データベースを選択できませんでした"); } else{ echo("データベースを選択しました"); } $name=$_POST["name"]; $meka=$_POST["meka"]; $mekanum=array("ミズノ","ヨネックス","ブリヂストン"); $meka=$mekanum[$meka]; $query = "select name,meka from test where"; if($name != "") { $query = $query . " name like '%$name%' "; } if($meka != ""){ $query = $query . " and meka like '%$meka%' "; } $result = mysql_query($query); $num_rows=mysql_num_rows($result); ?> <br>検索結果<br> <?php if($num_rows== 0){ $message="該当するデータはありませんでした"; } else $message=$num_rows ."件ヒットしました"; echo $message; ?> <br><table border=1><tr><td>名前</td><td>メーカー</td></tr><br> <?php while($row = mysql_fetch_array($result)):?> <tr><td><?php echo "$row[name]"; ?></td><td><?php echo "$row[meka]"; ?></td></tr> <? endwhile; ?> </table> <a href="html.html">再検索</a> </body> </html> htmlのソース <html> <head> <title>検索</title> <meta http-equiv="Content-Type" content="text/html;charset=eucjp"> </head> <body> <form method="POST" action="php.php"> <table border> <tr> <td height="30"><font size="5">&nbsp;ラケット名</font> <td height="30">&nbsp;<input type="text" name="name" size="40" maxlength="255"> </td></tr> </table> <table border> <tr> <tr> <td>メーカー</td> <td> <input type="radio" name="meka" value="ミズノ">ミズノ<br> <input type="radio" name="meka" value="ヨネックス">ヨネックス<br> <input type="radio" name="meka" value="ブリヂストン">ブリヂストン<br> <br> </td> </tr> </table> </SELECT> </td> </table> <input type="submit" name="submit" value="検索"> <input type="reset" value="条件クリア"> </tb> </body> </html> 分かる方がいたら教えていただきたいです、助言や指摘などありましたら、よろしくお願いします。

  • PHPでMySQLにデーターを追加するところで壁に当たってしまいました

    PHPでMySQLにデーターを追加するところで壁に当たってしまいました。 PHP5.3&MYSQL5.1 1.フォームへ入力 2.確認画面 3.MySQLへデーター追加 1.form <html> <head><title></title></head> <body> <form method="post" action="conf.php"> <table> <tr><th>番号</th><td><input type="text" name="id" /></td></tr> <tr><th>タイトル</th><td><input type="text" name="title" /></td></tr> <tr><th>テキスト</th><td><textarea name="cont" cols="40" rows="5" /></textarea></tr> <tr><th>日付け</th><td><input type="text" name="update" size="10" /></td></tr> </table> <input type="submit" value="送信" /><input type="reset" value="リセット" /> </form> </body> </html> 2.確認画面 <html> <head><title></title></head> <body> <table> <tr><th>番号</th><td><?php echo htmlspecialchars($_POST["id"]) ?></td></tr> <tr><th>タイトル</th><td><?php echo htmlspecialchars($_POST["title"]) ?></td></tr> <tr><th>テキスト</th><td><?php echo htmlspecialchars($_POST["cont"]) ?></td></tr> <tr><th>日付け</th><td><?php echo htmlspecialchars($_POST["update"]) ?></td></tr> </table> <form method="post" action="upld.php"> <input type="hidden" name="did" value="<?php echo htmlspecialchars($_POST["id"]) ?>" /> <input type="hidden" name="title" value="<?php echo htmlspecialchars($_POST["title"]) ?>" /> <input type="hidden" name="cont" value="<?php echo htmlspecialchars($_POST["cont"]) ?>" /> <input type="hidden" name="update" value="<?php echo htmlspecialchars($_POST["update"]) ?>" /> <input type="submit" value="登録" /> </form> </body> </html> 3.MySQLへデーター追加 <?php $Con = mysql_connect("localhost","root",""); if ($Con == false) {dir ("MySQLの接続に失敗。");} if (!mysql_select_db("phpdata",$Con)) {dir ("データーベース接続に失敗。");} $sql = "insert into daimoku(id,title,cont,update) values('".$_POST["id"]."','".$_POST["title"]."','".$_POST["cont"]."','".$_POST["update"]."')";//SQL文の作成 $res = mysql_query($sql) or die(mysql_error());//クエリの実行 mysql_close($Con);//切断 ?> <html> <head> <title></title> </head> <body> <p>ご登録ありがとうございました。</p> <a href="01.php">戻る</a> </body> 以上のコードでデーターの追加が出来ません。 どなたか教えていただけないでしょうか?

    • ベストアンサー
    • PHP
  • 選択された値をセッションで保存したい

    ラジオボタンで選択された値をセッションで保存し、DBまで持って行きたいのですが、どのようにすればよいでしょうか?なお、ラジオボタンからはPOSTで渡しています。どなたかわかる方ご教授お願いします。流れは【a.php => b.php => c.php => d.php => DB】c.phpにラジオボタンがあります。 [c.php]はこのような感じです。 <form name="form1" method="post" action="d.php"> <input type="radio" name="color" value="なし" >なし <input type="radio" name="color" value="赤">赤 <input type="radio" name="color" value="青">青 <input type="submit" name="Submit" value="送信">

    • ベストアンサー
    • PHP
  • forで作成したフォームの値を更にPHPへ渡して表示する方法

    初心者です。 現在、PHPでforを利用し、繰り返しフォームを表示 させた後、その表示されたフォームへ入力をし、更に 違うPHPで入力された値を出力させようとしているのですが、 最終の出力が出来ずに悩んでおります。 繰り返しでフォームを作成するまでは出来たのですが、 どなたか御助力頂けたら助かります。 ---------------------------------------------------- <form.html> <html> <head> <title>it1</title> </head> <body> <form name="form" action="./it.php" method="POST"> <b>ラジオ選択<br> <input name="machine" type="radio" value="24">24<br> <input name="machine" type="radio" value="48">48<br> <input name="machine" type="radio" value="24">50</b><br><br> </body> <input type="submit" name="Submit" value="設定"> </form> </html> ------------------------------------------------------ <it.php> <?php $a = $_REQUEST["machine"]; ?> <html> <body> <p>入力テキストボックス表示</p> <?php for ($c=0; $c<$a; $c++){ $var[$c] += $var[$c]; $dest[$c] += $dest[$c]; $no[$c] += $c+1; } ?> <table> <tr> <td><center> <form name="form" action="./it2.php" method="POST"> <td> <center> <b>vlan</b><br> <?php for ($i=0; $i<count($var); $i++) { "<form name="form" action="./it2.php" method="POST">" print("fa0/${no[$i]}<input type=\"text\" name=\"${var[$i]}\" size=\"3\" maxlength=\"3\"><br>\n"); } ?> </td> <td> <b>description</b><br> <?php for ($i=0; $i<count($dest); $i++) { print("<input type=\"text\" name=\"${dest[$i]}\" size=\"15\" maxlength=\"15\"><br>\n"); } ?> </td> </tr> </table> <input type="submit" name="Submit" value="設定"> </form> </body> </html> -------------------------------------------------------- 以降の出力ソースに関して、難儀中。

    • ベストアンサー
    • PHP