ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:1300yyyttt Mysqlにhtmlのフォームから登録できません。
困り度:
  • 困っています
WindowsでphpからMysqlにデータを登録しようと思っているのですが、うまくいきません。

データベースの内容をHTML,PHPで書き出すことは正常にできたのですが、登校フォームから入力してもデータが書き込まれません。フォームのHTMLはおそらく間違ってないと思います。

これが受け入れ側のファイルの内容です。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>

<?php
extract($_POST);
mysql_connect('localhost','root','パスワード');
mysql_select_db('データベース名');
$sql = "insert into テーブル名 values('フィールド1の値','フィールド2の値','フィールド3の値','フィールド4の値',0)";
mysql_query($sql);
?>

</body>
</html>

ファイル名は.phpの拡張子で保存してます。
Mysqlの環境設定はできているのに何故データを登録できないのでしょうか?
詳しい方どうか教えてください。よろしくお願いします。
質問投稿日時:08/04/19 17:47
質問番号:3960127
最新から表示回答順に表示

回答

 

回答者:_pipi_ phpでデータベースを操作する命令は、関数として実行されます
mysql_connect('localhost','root','パスワード');
は本来
$rt=mysql_connect('localhost','root','パスワード');
のようにして、呼び出した結果を$rtで受け取ります
それがどのような値かによって接続が成功したかどうか判断します
さらに
if( !$rt = mysql_connect( 'localhost','root','パスワード' ) ) exit( 'MySQLとの接続ができません');
と書いても良いのかもしれません。
それと
mysql_query($sql);
は、
mysql_query($sql,$rt);
のように書き、接続したときの戻り値が、そのデータベースとアクセスすときのキーとなります
その辺を、もう少しおさらいすることをお奨めします
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:08/04/20 07:58
回答番号:No.2
この回答への補足この回答に補足をつける(質問者のみ)
この回答へのお礼返事が遅くなりました。
ここ数日はデータベースをあきらめていた状態でした。
pipiさんのおっしゃることを参考に頑張ってみます。
ありがとうございました。

回答

 

回答者:_pipi_ mysql_connect('localhost','root','パスワード');
mysql_select_db('データベース名');
にはそれぞれ戻り値があるのですが、それはどういう値になってますか?
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:08/04/19 18:58
回答番号:No.1
この回答への補足この回答に補足をつける(質問者のみ)
この回答へのお礼お返事ありがとうございます。
まだまだ初心者なので、「それぞれの戻り値」というのがいまいちよくわかってません。
それはどういった時に作った値なのでしょうか?
 
最新から表示回答順に表示