電子書籍の厳選無料作品が豊富!

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の環境設定はできているのに何故データを登録できないのでしょうか?
詳しい方どうか教えてください。よろしくお願いします。

A 回答 (2件)

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);
のように書き、接続したときの戻り値が、そのデータベースとアクセスすときのキーとなります
その辺を、もう少しおさらいすることをお奨めします
    • good
    • 0
この回答へのお礼

返事が遅くなりました。
ここ数日はデータベースをあきらめていた状態でした。
pipiさんのおっしゃることを参考に頑張ってみます。
ありがとうございました。

お礼日時:2008/04/22 17:55

mysql_connect('localhost','root','パスワード');


mysql_select_db('データベース名');
にはそれぞれ戻り値があるのですが、それはどういう値になってますか?
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
まだまだ初心者なので、「それぞれの戻り値」というのがいまいちよくわかってません。
それはどういった時に作った値なのでしょうか?

お礼日時:2008/04/19 21:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!