0

очень давно мучаюсь , вообще не создаются куки , помогите , перед

<?php
$test = setcookie("login", "12345", time() + 3600*24*30, '/');

$mysql_con = mysqli_connect("localhost", "СКРЫТО", 
"СКРЫТО","СКРЫТО"); 
if (!mysql_con) {die("Ошибка подключения к БД , обратитесь к 
администратору!");}
if(isset($_POST["logined"])) {
 $login = $_POST["logined"];    
$password = $_POST["passworded"];
$sql = "SELECT `id` FROM `users` WHERE `login` = '$login' LIMIT 1";
$res = mysqli_query($mysql_con, $sql);
$row = mysqli_num_rows($res); // Если занят, то придет '1', если 
свободен, то придет '0'
$sqlch = "SELECT `password` FROM `users` WHERE `login` = '$login'";
$resch = mysqli_query($mysql_con, $sqlch);
$rowch = mysqli_fetch_assoc($resch)['password'];
if ($row == 1) {
if ($rowch == $password) {
    echo json_encode($test);
    echo json_encode("2");
} else {
    echo json_encode("3");
}


 }


 else { 
 $userregg = "1";
 echo json_encode($userregg);

 }
 // End
}
?>
  • Что вам в браузер выводит эта команда echo json_encode($test);? – Visman Feb 13 '18 at 06:21
  • false , json_encode работает правильно , в начале смотрите setcookie – VIP300100 Feb 13 '18 at 06:37
  • Раз false, значит setcookie("login", "12345", time() + 3600*24*30, '/'); не может отправить данные, так как Если перед вызовом функции клиенту уже передавался какой-либо вывод (теги, пустые строки, пробелы, текст и т.п.), setcookie() потерпит неудачу и вернет FALSE. http://php.net/manual/ru/function.setcookie.php#refsect1-function.setcookie-returnvalues – Visman Feb 13 '18 at 07:05
  • https://ru.stackoverflow.com/q/284578/186083 – Visman Feb 13 '18 at 08:08
  • а подключение к бд работает? и что вы записываете туда? – Севериан Feb 13 '18 at 05:29
  • @Visman Я в самом начале файла , до этого вообще ничего не передовалось – VIP300100 Feb 13 '18 at 14:59
  • @Visman решил проблему тем , что поменял кодировку на без BOM , огромное тебе спасибо за ту ссылку , если бы не ты то я бы так же мучался еще пол года – VIP300100 Feb 13 '18 at 15:54

0 Answers0