Есть форма авторизации, в которую пользователь вводит имя и пароль(данные должны храниться в json файле). Если введен имя и пароль, скрипт php
проверяет есть ли такое имя в файле json
, если есть то проверяет есть ли такой пароль в файле и если есть то выбить предупреждение что имя занято(не знаю как сделать так что бы проверяемый пароль относился конкретно к введенному имени). Если имя нету в файле то происходит его запись. Запись в файл каждый раз перезаписывается, вместо того что бы дописывать новые данные(имя, пароль). Подскажите пожалуйста как корректно сделать проверку и запись.
<?php
$name = $_POST['user'];
$password = $_POST['pass'];
if (isset($name) && isset($password)) {
$file = 'users.json';
$new_name = array('Name' => $name, 'Password' => $password);
$new_name = json_encode($new_name, JSON_PRETTY_PRINT, FILE_APPEND);
file_put_contents($file, $new_name );
$fileq = file_get_contents('users.json');
$taskList = json_decode($fileq,TRUE);
//проверяем есть ли уже такое имя в файле
if (in_array($name, $taskList)) {
echo "Name is busy";
//если да, то не записываем
}
else{
echo "name is empty";
//если нет-записываем
}
}
?>
$(document).ready(function(){
$('#submit').click(function(){
var name = $('#username').val();
var password = $('#password').val();
$.ajax({
type : 'POST',
url : 'php/login_script.php',
data : {user:name, pass:password}
});
});
});
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>
<div id="register">
<form method="POST" id="form">
<p >Enter your name</p>
<input type="text" name="username"id="username">
<p >Enter your pasword</p>
<input type="password" name="password" id="password">
</form>
</div>
<input type="Submit" id="submit">
Файл с пользователями users.json
{"user1":"pass1","user2":"pass2","user3":"pass3"}
Обработка
if(!isset($_POST['user'])||!isset($_POST['pass'])){
echo "Username and password required";
die();
}
$file = "users.json";
$users = json_decode(file_get_contents($file), true);
$name = $_POST['user'];
$password = $_POST['pass'];
if(isset($users[$name]) {
if($users[$name] === $password){
echo "OK";
} else {
echo "Wrong password"
}
} else {
$users[$name] = $password;
file_put_contents($file, json_encode($users));
echo "New user created";
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Приложение на Yii2-advanced в common есть модуль support, в файле mainphp в папке config он был подключен
Раньше сайт на CMS simpla работал на php 52, после перехода на 5
Помогите сделать вывод данных из таблицы в обратном порядке, сейчас я их вывожу в прямом порядкеМожно ли сделать кнопку для удаления строки,...