• ベストアンサー

ラジオボタンをループすることができない。。。

こんにちは。 PHPとMySQLを使って四択クイズのプログラムを作成しているのですが、どうもうまくいきません。 助言よろしくお願いします。 四択クイズのイメージとしては以下のとおりです。 問題1:パンはパンでも食べられないパンは? ○クリームパン ○食パン ○フライパン ○チーズパン [送信ボタン] ※選択肢の前の○はラジオボタンです。 一つのページに複数の問題を載せたいので、 上記の[送信ボタン]をのぞいた部分をループ処理したいと思っています。 問題文と選択肢は実行するファイルとは別のファイル、「mondai.sql」に記述してデータベースに読み込んでいます。↓ drop table form2; create table form2(id mediumint not null auto_increment, mondai varchar(500), sentaku1 varchar(100),sentaku2 varchar(100),sentaku3 varchar(100), sentaku4 varchar(100),primary key(id)); insert into form2 values('1', 'パンはパンでも食べられないパンは?', 'クリームパン', '食パン', 'フライパン', 'チーズパン'); そして実行するファイルの「form2.php」を下のように記述してみたのですが・・・ ・ ・ ・ //----------------------------------------- //サーバに接続 //----------------------------------------- $my_Con = mysql_connect("localhost","root","vertrigo"); if($my_Con == false){ die("MYSQLの接続に失敗しました。"); } //----------------------------------------- //データベースに接続 //----------------------------------------- if(!mysql_select_db("kihon",$my_Con)){ die("データベースの選択に失敗しました。"); } //----------------------------------------- //テーブルからデータを読む //----------------------------------------- $my_Row = mysql_query("select * from form2",$my_Con); if(!$my_Con){ die(mysql_error()); } while($row = mysql_fetch_array($my_Row)){ echo $row["id"]; echo "<br>"; echo $row["mondai"]; echo "<br>"; ?> <input type="radio" name=mondai1 value=1> <?php echo $row["sentaku1"]; echo "<br>"; ?> <input type="radio" name=mondai1 value=2> <?php echo $row["sentaku2"]; echo "<br>"; ?> <input type="radio" name=mondai1 value=3> <?php echo $row["sentaku3"]; echo "<br>"; ?> <input type="radio" name=mondai1 value=4> <?php echo $row["sentaku4"]; echo "<br>"; } このままだとラジオボタンのnameが同じになってしまって全ての問題の選択肢から一つしか選べなくなってしまいました。 かといってnameをfor文でループさせることもできませんでした。 このプログラムにどのようにしてループを組み込めばいいかまったくわかりません。 長い質問で申し訳ないのですが、どうかよろしくお願いします。

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

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

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

idがあるのだからこんな感じで・・・ while($row = mysql_fetch_array($my_Row)){ print <<<eof 問題 {$row["id"]}:<br> {$row["mondai"]}<br> <input type="radio" name="mondai[{$row["id"]}]" value="1">{$row["sentaku1"]}<br> <input type="radio" name="mondai[{$row["id"]}]" value="2">{$row["sentaku2"]}<br> <input type="radio" name="mondai[{$row["id"]}]" value="3">{$row["sentaku3"]}<br> <input type="radio" name="mondai[{$row["id"]}]" value="4">{$row["sentaku4"]}<br> <hr> eof; } 受け取る側は$_REQUEST["mondai"]という配列に、回答された値を 得ることができます。 ちなみにご提示のデータベースの構造はあまりよくないですね・・・。 拡張性にかけるし、正解とひもづいてないし、もう少し工夫が必要になる と思います

potatooo
質問者

お礼

yambejpさん、ご回答ありがとうございます。 for文使わないとできないと勝手に思い込んでいました(汗) idを有効活用したほうが全然いいですね! とても参考になりました。ありがとうございます。 自分もまだ始めたばかりなのでわからない事が多々ありますが、 悪いところを指摘してもらえてとても為になりました! 今後も工夫を重ねてスキルアップしていきたいと思います。

その他の回答 (1)

回答No.1

nameの番号をPHPで書いてあげればいいんじゃないでしょうか。 while($row = mysql_fetch_array($my_Row)){ の部分を $no = 0; while($row = mysql_fetch_array($my_Row)){ $no++; にしてあげて、 <input type="radio" name=mondai1 value=1> この部分を <input type="radio" name=mondai<?= $no ?> value=1> こんな感じとか。

potatooo
質問者

お礼

mizuno3さん、ご回答ありがとうございます。 なるほど・・・、inputタグの中にもPHPを書くこともできるんですね。 そこまで発想が回りませんでした。 とても参考になりました。ありがとうございます!

関連するQ&A

  • MySQLとPHP(HTML)の連携について

    送信側では、PHP(HTML)下記のように書きました。 ----------------------------- <form action="input.php" method="post"> ボタン1:<input type="submit" name="input" value="入力">   ボタン2:<input type="submit" name="input2" value="入力"> </form> ----------------------------- 受信側(input.php)は下記のように書きました。 ----------------------------- <?php $url = "***.sakura.ne.jp"; $user = "abc"; $pass = "12345"; $db = "sakura_db"; if (isset($_POST["$input"])){ $sql = "SELECT SQL_CALC_FOUND_ROWS * FROM MAIN"; }elseif (isset($_POST["$input2"])){ $sql = "SELECT SQL_CALC_FOUND_ROWS * FROM MAIN2"; } //Connect MySQL Server $my_Con = mysql_connect($url,$user,$pass); mysql_query("SET NAMES utf8",$my_Con); if ($my_Con == false){ die("MySQL Server接続に失敗しました。"); } //Connect MySQL DataBase if (!mysql_select_db($db,$my_Con)){ die("MySQL DataBase選択に失敗しました。"); } //MySQL Deta Read $my_Row = mysql_query($sql,$my_Con); if (!$my_Row){ die(mysql_error()); } $a = 1; while ($row = mysql_fetch_array($my_Row) or $a <= 50) { echo ' <p>'; echo ' A'.$a.':<input name="date" type="text" size="4" value="'.$row["a"].'">'; echo ' B'.$a.':<input name="date" type="text" size="4" value="'.$row["b"].'">'; echo ' C'.$a.':<input type="checkbox" name="example"'.check($row["c"]).'>'; echo ' D'.$a.':<input type="checkbox" name="example"'.check($row["d"]).'>'; echo ' </p>'; $a++; } //Close MySQL Server $my_Con = mysql_close($my_Con); if (!$my_Con) { exit("MySQL Server閉じられませんでした。"); } ?> ----------------------------- この状態で送信側のボタンをクリックすると、input.php側では”Query was empty”とエラーがでます。 送信側の2つあるボタンによって表示されるテーブルを変えたいのですが、何が原因なのでしょうか? そもそもSQLの内容をif文での条件分岐は出来ないのでしょうか? 最近PHPを勉強し出した初心者です。 出来れば分かりやすく教えていただけないでしょうか。 よろしくお願い致します!

    • ベストアンサー
    • PHP
  • phpがうまく動きません。

    phpで4択のクイズを作りたいのですが 正解のラジオボタンを選んでもカウントされないのと 答え合わせを押すと正解だった箇所を赤く表示したいのですがなんて書けばよいのか どこにそのコードを入れるのかよくわかりません <状態> ・5つのデータがmyadminに保存されています ・データベースの内容は表示されます。 ・答え合わせを押すと正解のラジオボタンを選んだ数が表示されるようにしたいです ・保存ボタンは閉じても答えを保存するためにあります ・q_noは8ケタ固定であり、左から5つ目までは固定であと3桁は999問入れられるよう設定してあります ・q_ansはデータベースに答えの値(1~4)が入れてあります ・データベース名はproblemです <省略> $res_set = mysql_query($sql); while ($row=mysql_fetch_array($res_set)){ ?> <form method="POST" action="H2102.php"> <?php echo $row['q_no'] . " "; ?> <br> <?php echo $row['q_text'] . " "; ?><br><br> <br> <?php echo "ア"; ?> <input type="radio" name="q_ans" value="1"> <?php echo $row['q_point1'] . " "; ?> <br><br><br> <?php echo "イ"; ?> <input type="radio" name="q_ans" value="2"> <?php echo $row['q_point2'] . " "; ?> <br> <br><br> <?php echo "ウ"; ?> <input type="radio" name="q_ans" value="3"> <?php echo $row['q_point3'] . " "; ?> <br><br><br> <?php echo "エ"; ?> <input type="radio" name="q_ans" value="4"> <?php echo $row['q_point4'] . " "; ?> <br><br><br> <br> <input type = "submit" name="save" value="保存"> <?php if(isset($_POST['save'])){ $_SESSION['save'] = $_POST['q_ans']; //保存すると選んだ回答を保存 } ?> <?php } ?> </form> <form method="POST" action="H2102.php"> <input type = "submit" name="ans" value="答え合わせ"> <?php //正解かどうかをチェック if(isset($_POST['ans'])){ $a = $_SESSION['a']; if($row['q_no'] == $_POST['q_no'] && $_POST['q_ans'] || $_SESSION['save'] == $row['q_ans'] ){ $_SESSION['a'] = $a + 1; //q_noが一致かつ保存した値または選んだ解答(値)が一致していれば1問につき1つカウントする $a = $_SESSION['a']; } echo $a; //カウントされているかをチェック } ?> <input type = "submit" name="del" value="カウント初期化"> <?php if(isset($_POST['del'])){ session_unset(); } ?> </form> <br> <?php } ?> 足りない情報があれば追記します

    • 締切済み
    • PHP
  • 検索結果にラジオボタンを付加したい

    PHP初心者です。 困っています。どなたか分かる方いらっしゃたら、教えてください。 DBを検索して抽出結果を画面に表示します。 その結果にラジオボタンを付けて選択し、修正を行えるようにしたいのです。 (検索結果の件数は検索条件によって変動します) 条件による検索結果を表示、までは出来たのですが、 ラジオボタンを付加することが出来ません。 下記がソースです。 このソースですと echo "<input type="radio" name="edit" value=".$row["name"]." />修正"; この部分がエラーだというメッセージが表示されます。 この部分は色々変えてみましたが上手くいきません。 よろしくお願い致します。 <html> <head> //<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link rel="stylesheet" type="text/css" href="./css/color.css"> <title>○○学習サイト</title> </head> <body> <?php // 接続設定(サーバ/データベース/ユーザ/パスワード) $sv = "localhost"; $dbname = "jitec"; $user = "root"; $pass = ""; // データベースに接続する //mb_language("uni"); $conn = mysql_connect($sv, $user, $pass) or die("接続エラー"); mysql_select_db($dbname) or die("接続エラー"); // データを取り出す $sql = "SELECT name, setsumei, kubun FROM word WHERE (name LIKE '%".$_POST['s_word']."%' and setsumei LIKE '%".$_POST['s_word2']."%' and kubun LIKE '%".$_POST['s_word3']."%')"; //$sqlを表示 var_dump($sql); $res = mysql_query($sql, $conn) or die("データ抽出エラー"); //SELECTコマンドによって取得した全データは$resという変数に格納される。 // mysql_query()関数でデータを取り出すSQLを実行します。 // 取り出したデータを表示する echo "<table border=\"1\">"; echo "<tr>"; echo "<td>単語名</td>"; echo "<td>説明文</td>"; echo "<td>試験区分</td>"; echo "<td>修正する</td>"; echo "</tr>"; //$rowという変数に1行ずつ取り出す↓ while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { echo "<tr>"; echo "<td>".$row["name"]."</td>"; echo "<td>".$row["setsumei"]."</td>"; echo "<td>".$row["kubun"]."</td>"; echo "<td>"; echo "<form>"; echo "<input type="radio" name="edit" value=".$row["name"]." />修正"; echo "</form>"; echo "</td>"; echo "</tr>"; } echo "</table>"; // 接続を解除する mysql_close($conn); ?> <form method="POST" action="edit.php"> <input type="submit" value="修正" name="sub2"> </form> </body> </html>

    • ベストアンサー
    • PHP
  • ラジオボタンでうまくするには・・・・

    初めまして。 現在下記のプルダウン形式で、一つの価格が同じなので問題なく動くのですが <FORM action="cart/sys/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=hidden value=2000 name=tan> <SELECT name=sur> <OPTION value="" selected>購入数量</OPTION> <OPTION value=1>1</OPTION> <OPTION value=2>2</OPTION> <OPTION value=3>3</OPTION> <OPTION value=4>4</OPTION> <OPTION value=5>5</SELECT> <INPUT type=submit value=カートに入れる> </FORM><BR> <FORM action="・・・/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=hidden value=2000 name=tan> </FORM> 同じ商品で1・2・3・4・5のそれぞれに単価が変わる設定をしたいのですが、うまくいく方法が見つからないです。 ラジオボタン形式で作ってみたものの・・・・ <FORM action="・・・/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=submit value=カートに入れる> </FORM> <FORM> <INPUT type="radio" name="name1" value="2000">1袋<BR> <INPUT type="radio" name="name1" value="3900">2袋<BR> <INPUT type="radio" name="name1" value="5800">3袋<BR> <INPUT type="radio" name="name1" value="7500">4袋<BR> <INPUT type="radio" name="name1" value="8500">5袋</FORM> としてみましたがうまくいきません。 なにか方法ございましたら、ご教授いただければと思います。

    • ベストアンサー
    • HTML
  • ボタンのonclick時における関数コールの仕方

    下記のPHPスクリプトにおいて、updateMemo()関数の中で、テストで、 echo 'in update'; として、関数内に入ったら、文字列表示をするようにしているのですが、 更新ボタンを押しても、updateMemo()関数の中に入ってきません。(in update が表示されません) 関数のコールの仕方が、onclick=の部分でまちがっているのでしょうか? 教えていただきたいです。 <?php ////////////////////////// // メモ内容の閲覧、更新 // ////////////////////////// $sid = (int)$_GET['sid']; var_dump($sid); $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("*****-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "SELECT * FROM ideamemo_table WHERE sid=$sid;"; $result = mysql_query($sql, $con) or die(mysql_error()); $row = mysql_fetch_row($result); mysql_close($con); //$row[0] = (int)$row[0]; // string⇒int にキャスト echo '<form name="form1" method="POST" action="deleteUpdate.php">'; echo '内容<br>'; echo '<textarea name="textarea" cols="100" rows="30">'.$row[3].'</textarea>'; echo '<br>'; echo '<input type="button" value="更新" onclick="<?php updateMemo('.$sid.');?>">'; //echo '<input type="button" value="更新" onclick="updateMemo();">'; echo '<input type="button" value="削除" onclick="deleteMemo('.$sid.');">'; echo '<input type="button" value="トップページへ" onclick="location.href=\'main.php\'">'; echo '</form>'; var_dump($row[2]); function updateMemo($sid){ //function updateMemo(){ echo 'in update'; // var_dump($sid); // exit; date_default_timezone_set("Japan"); $update = date(Y年m月d日(D)H時i分s秒); $textarea = $_POST['textarea']; var_dump($textarea); var_dump($update); $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("LAA0471050-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "UPDATE ideamemo_table SET contents = '$textarea', update_date = '$update' WHERE sid=$sid;"; $result = mysql_query($sql, $con); mysql_close($con); // header("Location: main.php"); } function deleteMemo(int $sid){ echo 'in delete'; $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("LAA0471050-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "DELETE FROM ideamemo_table WHERE sid=$sid;"; $result = mysql_query($sql, $con); mysql_close($con); // header("Location: main.php"); } ?>

    • ベストアンサー
    • PHP
  • ラジオボタンのチェックの付け方。

    sizen.csvというファイルがあります。 中身は ----- umi,海 yama,山 mizuumi,湖 ike,池 mura,村 ----- です。 このcsvファイルをsizen.phpに読込んで ラジオボタン使用の設問を作りたいと思っております。 プログラムは・・・ <form action="area.php" method="POST"> <?php $file=file("sizen.csv"); for($i=0;$file[$i];$i++){ $data=explode(",",$file[$i]); echo"<input type='radio' name='sizen' value='".$data[0]."'>"; echo"$data[1]<br>"; } ?> <input type="submit" value="次へ"> とできたのですが、チェックがついていません。 先頭にチェックボタン(今回の場合は海の選択肢に最初からチェックを付けたい)を付けたいのですが、どういう方法があるのでしょうか? if文を使って <form action="area.php" method="POST"> <?php $file=file("sizen.csv"); for($i=0;$file[$i];$i++){ $data=explode(",",$file[$i]); if($data[0]==umi){ echo"<input type='radio' checked name='sizen' value='".$data[0]."' >"; echo"$data[1]<br>"; }else{ echo"<input type='radio' name='sizen' value='".$data[0]."'>"; echo"$data[1]<br>"; } } ?> <input type="submit" value="次へ"> とすればできるのですが、 sizen.csvファイルの中身をよく変える為、 if($data[0]==umi){・・・・ という風に、$data[0]==umiのように固定はできません。 この方法を使わずに、ラジオボタンのチェックを いつも選択肢の先頭に付けるにはどのような方法があるのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • データーベース接続 入力フォーム

    phpでデータベースを作成しています! 登録フォームからデータを入力して新しくデータを追加したいと思います! 番号 int プライマリーキー 氏名 varchar 住所 varchar です いまのプログラムは番号が重複じゃなかったら氏名と住所空白でも登録できてしまいます! 全部しないとエラーメッセージが返ってきて入力しなおさせるにはどうしたらいいですか? if文の書き方を教えてください また番号を空白だとエラーが返ってきます。どうしたらいいですか? 入力フォームのプログラム(regist.php) <HTML> <HEAD><TITLE>新規登録</TITLE></HEAD> <BODY> <BLOCKQUOTE> <FORM ACTION = "toroku.php" METHOD = "POST"> <BR><BR>登録画面<BR><BR> 番号 <INPUT TYPE="NAMBER" NAME = "ID"><BR><BR> 氏名 <INPUT TYPE="TEXT" NAME = "NAME"><BR><BR> 住所 <INPUT TYPE="TEXT" NAME = "ADDR"><BR><BR> <A HREF="http://localhost/test5.php"> <INPUT TYPE = "SUBMIT" VALUE = "登録する"></A> <A HREF="http://localhost/test5.php">一覧に戻る</A> </BODY> </BLOCKQUOTE> </FORM> </BODY> </HTML> 追加登録のプログラム(toroku.php) <HTML> <HEAD><TITLE>登録完了</TITLE></HEAD> <BODY> <?php $con=mysqli_connect("localhost","root","パスワード","db_test"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $sql="INSERT INTO tbl_test (番号, 氏名, 住所) VALUES ('$_POST[ID]','$_POST[NAME]','$_POST[ADDR]')"; if (!mysqli_query($con,$sql)) { die('Error: ' . mysqli_error($con)); } echo "登録完了しました"; mysqli_close($con); ?> <BR><BR> <A HREF="http://localhost/test5.php"> <INPUT TYPE = "SUBMIT" VALUE = "一覧へ戻る"></A> </BODY> </HTML> 表示のプログラム(test5.php) <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>一覧画面</title> </head> <body> <BLOCKQUOTE> <BR>一覧画面<BR><BR> <?php $con=mysqli_connect("localhost","root","パスワード","db_test"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $result = mysqli_query($con,"SELECT * FROM tbl_test"); echo "<table border='1'> <tr> <th>番号</th> <th>氏名</th> <th>住所</th> </tr>"; while($row = mysqli_fetch_array($result)) { echo "<tr>"; echo "<td>" . $row['番号'] . "</td>"; echo "<td>" . $row['氏名'] . "</td>"; echo "<td>" . $row['住所'] . "</td>"; echo "</tr>"; } echo "</table>"; mysqli_close($con); ?> <BR><BR><BR> <A HREF="http://localhost/regist.php"> <INPUT TYPE = "SUBMIT" VALUE = "新規登録"></A> </BLOCKQUOTE> </body> </html> 見づらくってごめんなさい

    • ベストアンサー
    • PHP
  • 2つのsubmitボタンがあるときに

    最初に書いたボタンが優先され 単にリターンキーを押したときに 最初のsubmitボタンが反応します。 後のsubmitボタンが反応するようにするにはどうしたらいいのでしょうか? つまり下記のPHPをブラウザに表示させているときにリターンキーを押したときには submit2 is pushed. と表示させるにはどうしたらいいのでしょうか? <form method="post" action="<?=$PHP_SELF?>"> <input type="text"/><br/> <input type="checkbox"/><br/> <input type="radio" name="radio"/><br/> <input type="submit" name="submit" value="submit1" tabindex=-1/><br/> <input type="submit" name="submit" value="submit2" tabindex=1/><br/> </form> <?php if(isset($_POST['submit'])) { echo$_POST['submit'].' is pushed.'; } ?>

    • ベストアンサー
    • PHP
  • php データ削除

    一覧画面に更新、削除というボタンをつくり番号を受け取って削除したいのですが、削除ボタンを押しても画面は変わるのですが削除されません 助けてください 番号 int プライマリーキー 氏名 varchar 住所 varchar 一覧画面のソース <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>一覧画面</title> </head> <body> <BLOCKQUOTE> <BR>一覧画面<BR><BR> <?php $con=mysqli_connect("localhost","root","admin","db_test"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $result = mysqli_query($con,"SELECT * FROM tbl_test"); echo "<table border='1'> <tr> <th>番号</th> <th>氏名</th> <th>住所</th> </tr>"; while($row = mysqli_fetch_array($result)) { echo "<tr>"; echo "<td>" . $row['番号'] . "</td>"; echo "<td>" . $row['氏名'] . "</td>"; echo "<td>" . $row['住所'] . "</td>"; echo "<form action=koushin_input.php method=post>"; echo "<td><input type=submit value=更新></td>"; echo "</form>"; echo "<form action=sakujo.php method=post>"; echo "<td><input type=submit value=削除></td>"; echo "</form>"; echo "</tr>"; } echo "</table>"; mysqli_close($con); ?> <BR><BR><BR> <A HREF="http://localhost/regist.php"> <INPUT TYPE = "SUBMIT" VALUE = "新規登録"></A> </BLOCKQUOTE> </body> </html> 削除ソース  sakujo.php <html> <body> <? // データベースに接続 if(!$con=mysql_connect("localhost","root","admin")){ echo"接続エラー"; exit; } // データベースを選択 if(!mysql_select_db("db_test",$con)){ echo"データベース選択エラー"; exit; } // DELETE文を実行 $sql = "delete from tbl_test where '番号'= 番号; if(!$res=mysql_query($sql)){ echo "SQL実行時エラー"; exit; } // データベースから切断 mysql_close($con); // 登録完了メッセージの表示 echo "削除完了"; ?> </body> </html> どういう風にpostで渡せばいいですか?

    • ベストアンサー
    • MySQL
  • php + MySQLでデータ削除 更新

    一覧画面に更新、削除というボタンをつくり番号を受け取って削除したいのですが、削除ボタンを押しても画面は変わるのですが削除されません 助けてください 番号 int プライマリーキー 氏名 varchar 住所 varchar 一覧画面のソース <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>一覧画面</title> </head> <body> <BLOCKQUOTE> <BR>一覧画面<BR><BR> <?php $con=mysqli_connect("localhost","root","admin","db_test"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $result = mysqli_query($con,"SELECT * FROM tbl_test"); echo "<table border='1'> <tr> <th>番号</th> <th>氏名</th> <th>住所</th> </tr>"; while($row = mysqli_fetch_array($result)) { echo "<tr>"; echo "<td>" . $row['番号'] . "</td>"; echo "<td>" . $row['氏名'] . "</td>"; echo "<td>" . $row['住所'] . "</td>"; echo "<form action=koushin_input.php method=post>"; echo "<td><input type=submit value=更新></td>"; echo "</form>"; echo "<form action=sakujo.php method=post>"; echo "<td><input type=submit value=削除></td>"; echo "</form>"; echo "</tr>"; } echo "</table>"; mysqli_close($con); ?> <BR><BR><BR> <A HREF="http://localhost/regist.php"> <INPUT TYPE = "SUBMIT" VALUE = "新規登録"></A> </BLOCKQUOTE> </body> </html> 削除ソース  sakujo.php <html> <body> <? // データベースに接続 if(!$con=mysql_connect("localhost","root","admin")){ echo"接続エラー"; exit; } // データベースを選択 if(!mysql_select_db("db_test",$con)){ echo"データベース選択エラー"; exit; } // DELETE文を実行 $sql = "delete from tbl_test where '番号'= 番号; if(!$res=mysql_query($sql)){ echo "SQL実行時エラー"; exit; } // データベースから切断 mysql_close($con); // 登録完了メッセージの表示 echo "削除完了"; ?> </body> </ht

    • 締切済み
    • PHP

専門家に質問してみよう