私はphpとmysqlの使い方を独学しようとしています。練習のために、ユーザー名とパスワードを受け取る簡単なテスト Web サイトと、phpmyadmin と mysql を使用したデータベースを作成しました。DB への正常な接続を作成できましたが、現在、Web サイトのフォームからデータを取得して、「アカウント」というテーブルに挿入しようとしています。アカウントには、「username」、「password」、および「userID」(主キー) の 3 つのフィールドがあります。ユーザー ID は自動インクリメントされるため、フィールドに入力データは必要ありません。ユーザー名とパスワードを収集し、アカウント テーブルに新しいレコードとして追加すると思われるコードを書きましたが、次のエラー メッセージが表示されます。
内部サーバーエラー
サーバーで内部エラーまたは構成ミスが発生したため、リクエストを完了できませんでした。
さらに、ErrorDocument を使用して要求を処理しようとしたときに、404 Not Found エラーが発生しました。
以下に私のコードを含めました。私は以前に PHP を使用したり、DB を作成したりしたことがないため、非常に明白な間違いを犯した可能性があります。
php_script
<?PHP
$db_host = "stevie.heliohost.org";
$db_username = "secret";
$db_pass = "secret";
$db_name = "secret";
$connection = @mysql_connect ("$db_host","$db_username", "$db_pass")
or die ("could not connect to mySQL");
@mysql_select_db("$db_name") or die ("No database");
$sql="INSERT INTO account(username, password)
VALUES('$_POST[user]','$_POST[password]')";
if (!mysql_query($sql,$connection ))
{die('Error: ' . mysql_error());}
echo "1 record added";
mysql_close($con);
?>
HTMLフォーム
<form name="LOGIN" action="php_script.php" method="post">
Username: <input id="username" type="text" name="user">
password: <input id="password" type="text" name="password">
<input id="submit" type="submit" value="Submit">
</form>