現在、登録とログインページを作成中です。最初のページでは、アカウントを作成するかログインするかを尋ねられます。私たちがしなければならないことは、ユーザーが情報を入力するフォームから情報を取得し、それをテキスト ファイルに配置することです。私はこれを大まかに動作させています。セキュリティ上の理由からこれが適切でないことは理解していますが、これはクラスの課題であり、テキスト ファイルに情報を入力する必要があります。テキスト ファイルに情報が入っていますが、投稿されたユーザー名をデータベース内のすべてのユーザー名と比較するのに問題があります。これは、newaccount.html ページのコードと、フォームが送信される register.php ファイルです。
newaccount.html
<html>
<head>
</head>
<body>
<h3>Hello new user! Choose a user name and password ^_^</h3><br>
<form action = "register.php" method = "POST" >
Username: <input type = "text" name = "username"><br><br>
Password: <input type = "password" name = "pass"><br>
<input type = "submit" value = "Create Account" name = "submit"><br>
</form>
<form method = "LINK" action = "Proj2_practice.html">
<input type = "submit" value = "Home Page" name = "submit2">
</form>
</body>
</html>
register.php
<?php
$username = $_POST['username'];
$password = $_POST['pass'];
$userAndPass = $username.",".$password;
$userNames = 'usernames.txt'." ";
$passwords = 'passwords.txt'." ";
$fh_users = fopen($userNames, 'a+')or die("sorry, we couldnt open the file");
$fh_passwords = fopen($passwords, 'a+')or die("sorry, we couldnt open the file");
fwrite($fh_users, $username." ");
fwrite($fh_passwords, $password." ");
$allUserNames = fread($fh_users, filesize('usernames.txt'));
echo $allUserNames;
?>
ユーザー名とパスワードはテキスト ファイルに正しく送信されています。コードの最後では、変数がエコーされていません。現時点では、テキスト ファイルに情報がありません。それが原因で何もエコーされていないかどうかはわかりません。ここで私のアプローチは正しいですか?ここでやろうとしているのは、それぞれの名前とパスワードをユーザー名とパスワードのテキスト ファイルに送信することです。
これらの各テキスト ファイルをスペースで分解します。そのため、テキスト ファイルに書き込んだ後にテキスト ファイルを追加し、ユーザー名とパスワードをそれぞれの配列要素で比較します。私は自分が思っているほどこれを複雑にしすぎていますか? コメントを残してください、私はただ改善しようとしています^_^
前もって感謝します!