@r_zero

При использовании проверок на $_POST выходит ошибка ключей из массива. Что у меня в коде не так?

$name =$_POST["username"];
$email =$_POST["email"];
$pass =$_POST["password"];
if(trim($name)==""){
    echo"вы не ввели имя пользователя";
}else if(strlen(trim($name))<=3){
    echo"Такого имени не существует";
}

//это сам код post

<div class="container mt-2">
     <h1>Про нас</h1>
    <form action="check_post.php" method="post">
        <input  type="text" name ="username" placeholder ="Введите имя" class = "form-control"><br>
        <input  type="email" name ="email" placeholder ="Введите email" class = "form-control"><br>
        <input  type="password" name ="password" placeholder ="Введите пароль" class = "form-control"><br>
        <textarea name ="massage" class="form-control" placeholder="Введите сообщение"></textarea><br>
        <input type="submit" value="Отправить" class ="btn btn-success">
    </form>
</div>

//а это form
  • Вопрос задан
  • 99 просмотров
Пригласить эксперта
Ответы на вопрос 1
@rPman
Я тебе подправил твой вопрос, ты тегами code не попал собственно в публикуемый текст

По теме вопроса, у тебя на любое открытие страницы идет попытка доступа к $_POST[...] но при простом открытии этот массив пустой
делай хотя бы так:
$name =$_POST["username"]??"";
этот ?? делает так:
isset($_POST["username"])?$_POST["username"]:""
и ошибки не будет, а неизвестное значение подставится как ""
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы