- 締切済み
phpスクリプト起動せず・・・・
データーベースの削除スクリプトを作成しましたが、 動作しません。 HTMLから削除する番号を入力すると、データーベースの 該当する番号のレコードを削除し、その結果を表示する スクリプトなのですが、HTMLより削除する番号を入力し、 送信ボタンを押しても何も反応しない状態です。 なんかデーターベースにも接続できていない模様です。 connection!!と表示されてませんし。。。 <HTMLファイル:kantan.html> <!--削除フォーム--> <form method="post" action"kantan_del.php"> 削除する番号を入力してください<input type="text" name="b1"><br> <input type="submit" vakue="削除番号送信"> </form> <PHP削除用スクリプト:kantan_del.php> <?php $con=mysql_connect("localhost","root","1234") or die("失敗"); print "conection!!<br>"; mysql_select_db("db1",$con); $b=$_POST_["b1"]; mysql_query("delete from tbk where bang=$=b"); print "削除完了<br>"; print "<hr>"; $re=mysql_query("select * from tbk order by bang asc"); while($kekka=mysql_fetch_array($re)){ print $kekka[0]; print " : "; print $kekka[1]; print " : "; print $kekka[2]; print "<br>"; } print "<hr>"; mysql_close($con); print "<a herf='kantan.html'>TOPページへ戻る</a>"; ?> <データーベース:db1> mysql> desc tbk; +-------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+----------------+ | bang | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(100) | YES | | NULL | | | mess | varchar(100) | YES | | NULL | | +-------+--------------+------+-----+---------+----------------+ どなたかご教授下さい。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- agunuz
- ベストアンサー率65% (288/438)
><form method="post" action"kantan_del.php"> 本当にこのhtmlならば、actionの記述が間違っています。 <form method="post" action="kantan_del.php"> 起動するもしないも、そもそもブラウザのアドレス表示が kantan_del.php に遷移していないと思いますが・・・ あと(すでに指摘がありますが)ネイティブなMySQL関数はすでに非推奨ですのでPDOで書き直すことをお勧めします。 MySQL関数だとしてもSQL文が間違っています。 >mysql_query("delete from tbk where bang=$=b"); mysql_query("delete from tbk where bang=$b");
- yambejp
- ベストアンサー率51% (3827/7415)
phpにおけるmysql_関数は非推奨なので、今後過去の技術として 適切な回答は期待しない方がいいでしょう。 PDOへの移行を強くお勧めします とはいえ、ヒントとしてmysql_query()を実行する際に mysql_query("・・・") or die(mysql_error()); で、エラーを確認するのが旧来の常套手段でした。 もし転記ミスがないとすると >mysql_query("delete from tbk where bang=$=b"); の文法はあきらかにおかしいですね
補足
phpでmysql_関数は非推奨なんですね。 php、mysqlを学習し始めたばかりなので初めて知りました!! mysql_query("delete from テーブル名 削除条件"); は文法的に間違いなのですか? 私が参照している本(基礎からのMySQL)では mysql_query("delete from テーブル名); mysql_query("delete from テーブル名 削除条件"); と記載されています。 insert時は、 mysql_query("insert into テーブル名(カラム1,カラム2) values('値','値')"); と記載されています。 本が間違っているのでしょうか?