Я сделал две формы - одну для входа в систему, если пользователь уже зарегистрирован, а другую для регистрации. Дату пользователя я сохраняю в файл date.txt таким образом имя: Питер, логин: pet123, пароль: 12345 | имя: Джон, логин: joh123, пароль: 54321 и т. д., я еще не пользуюсь БД.
Вот оно
<form action="#" method="post" id="user_new" class="user_new">`<br/>
<label for="name">Name:</label><input type="text" name="name" id="name" required/>
<label for="username">Username:</label><input type="text" name="username" id="username" required />
<label for="password">Password:</label><input type="password" name="password" id="password" required/>
<input type="image" src="img/singUp.png" name="signUp" />
</form>
И вторая форма для входа в систему
<form action="#" method="post" id="login" class="login">
<label for="username">Username:</label><input type="text" name="username" id="username" required="required" />
<label for="password">Password:</label><input type="password" name="password" id="password" required="required"/>
<input type="image" src="img/singIn.png" name="signIn" />
<a href="registration.php" class="custom_link">Registrate Now</a>
</form>
и php для входа в систему
if (isset($_POST['singIn'])):
$users = file('date.txt');
foreach ($users as $key => $value)
{
$user = explode('|', $value);
$use = explode(',', $user);
$us = explode(':', $use);
unset($us['name'], $us['username'], $us['password']);
}
if (!in_array(trim($_POST['username']), $us)) die('There is no user with this username');
endif;
а этот код не работает? В чем проблема?
Второй вопрос, почему, когда я пишу
if(isset($_POST["signUp"])):
$name = $_POST["name"];
$uname = $_POST["username"];
$upass = $_POST["password"];
$users = fopen("date.txt", "a") or die("Couldn't open date.txt for add record");
$record ="name:".$name . ",username:" .$uname . ",password:" . $upass . "|";
fwrite($users,$record) or die ("Couldn't add record");
fclose($users);
endif;
код не работает, но работает без isset. Во втором случае я получаю двойные записи