@stasbombit

Не работает php код?

Пишу небольшой код(соцсеть) и делая регистрацию столкнулся с проблемой
<?php

require_once __DIR__.'/boot.php';

// Проверим, не занято ли имя пользователя
$stmt = pdo()->prepare("SELECT * FROM `accounts` WHERE `login` = :username");
$stmt->execute(['username' => $_POST['login']]);
if ($stmt->rowCount() > 0) {
    flash('Это имя пользователя уже занято.');
    echo('Это имя пользователя уже занято.');
    header('Location: register.php'); // Возврат на форму регистрации
    die; // Остановка выполнения скрипта
}

$name = $_POST["name"];
$login = $_POST["login"];
$pass = $_POST["password"];
$phone = $_POST["phone"];
$email = $_POST["email"];
$bio = $_POST["bio"];

// Добавим пользователя в базу
$stmt = pdo()->prepare("INSERT INTO `accounts` (`login`, `password`, `name`, `bio`, `email`, `phone`, `rating`) VALUES (:login, :password, :name, :bio, :email, :phone, '1')");
$stmt->execute([
    'login' => $login,
    'password' => $pass,
    'phone' => $phone,
    'email' => $email,
    'bio' => $bio,
    'name' => $name,
]);

header('Location: login.php');

Но когда я выполнял код то был просто белый экран и всё
Делал с https://habr.com/ru/articles/665602/
изменил только index.php
  • Вопрос задан
  • 174 просмотра
Решения вопроса 2
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Логи смотри, ну или включи вывод ошибок.
echo('Это имя пользователя уже занято.');
header('Location: register.php'); // Возврат на форму регистрации
Здесь стопудоф будет лажа, так как хеадер так не отправляется. Почему - учим матчасть. Собсно в логах это будет отражено.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@grek_cheburek
Программист самоучка
Перед session_start, а так же перед header() - не должно ничего выводиться. Если вы будете что-то выводить, это сразу выводит ошибку. Подумайте над другим вариантом, как пользователю сообщить, что логин занят.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
30 апр. 2024, в 16:35
5000 руб./за проект
30 апр. 2024, в 16:03
2500 руб./за проект