Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Как работает empty ? или в чем ошибка
maruo  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




action.php
//--------Авторизация пользователя----------------
if($_SERVER['REQUEST_METHOD'] == 'POST'){
if(isset($_POST['log_login']) and isset($_POST['log_password'])){
$auth_login = trim(strip_tags($_POST['log_login']));
$auth_password = trim(strip_tags($_POST['log_password']));
include_once"connect_bd.php";

$query = mysqli_query("SELECT * FROM users
WHERE login='
$auth_login'")
or die(mysql_error());

$result_query = mysqli_fetch_array($query);

if($result_query['password'] == md5($_POST['log_password'])){

session_start();
$_SESSION['name'] = $result_query['name'];
$_SESSION['coins'] = $result_query['user_coins'];
$_SESSION['auth'] = true;
header("Location: index.php");
exit();
}else{
header("Location: login.php");

}
}
}


index.php
<?php

if (empty($_SESSION['auth'])) {

echo "Авторизуйтесь";
include"menu_not_auth_inc.php";
}
else {

echo "Вы Авторизованы как ". $_SESSION['name']. '<br>';
echo "У вас на счету ". $_SESSION['coins']. "\n фишек";
include"menu_auth_inc.php";
}


При валидных введенных данных и авторизации должна определиться $_SESSION['auth'] = true;

И должна сработать истинна по сути дела.

Получается все наоборот срабатывает ложь .
Все конечно работает как мне надо. Авторизация и выводится тот контекст который нужен мне. Но это неверно по коду должно сработать истинна.
Помогите найти ошибку
$_SESSION['auth'] Более нигде не определяется

Это сообщение отредактировал maruo - 28.01.2016 - 22:47
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3375
Пользователь №: 38635
На форуме: 2 года, 11 месяцев, 5 дней
Карма: 170




Цитата (maruo @ 28.01.2016 - 20:46)
При валидных введенных данных и авторизации должна определиться $_SESSION['auth'] = true;

empty($_SESSION['auth']); // false


Подробнее тут: http://php.net/empty
Свернутый текст
Возвращает FALSE, если var существует, и содержит непустое и ненулевое значение. В противном случае возвращает TRUE.

Следующие значения воспринимаются как пустые:

"" (пустая строка)
0 (целое число)
0.0 (дробное число)
"0" (строка)
NULL
FALSE
array() (пустой массив)
$var; (переменная объявлена, но не имеет значения)


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maruo  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




AllesKlar Прописал var_dump
До авторизации она имеет у меня значение NULL и выдает нотис как Undefined index: auth in
После авторизации INT(1)

До авторизации я ее нигде не прописываю и не определяю. Только в условии
Проблема в этом?


Это сообщение отредактировал maruo - 28.01.2016 - 23:28
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wind  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Местная прописка
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 721
Пользователь №: 41530
На форуме: 1 год, 5 месяцев, 2 дня
Карма: 9




maruo

Может воспользоватся isset, не?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maruo  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




Wind
Понимаете я не против isset , я перепробовал разные варианты , набивая руку, на empty я остановился и не вникаю в суть 3й день
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wind  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Местная прописка
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 721
Пользователь №: 41530
На форуме: 1 год, 5 месяцев, 2 дня
Карма: 9




maruo

Выше же скинули ссылку на мануал там все расписано, или не понятно что такое flase, true, null? Тогда это другой вопрос


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wind  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Местная прописка
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 721
Пользователь №: 41530
На форуме: 1 год, 5 месяцев, 2 дня
Карма: 9




Цитата (maruo @ 28.01.2016 - 23:23)
и выдает нотис как Undefined index: auth in


приглушить можно собакой

@$_SESSION['auth'];


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maruo  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




WindДа это понятно что такое труе фулс и т.д
Непонятно почему работает наоборот конструкция.
я уже поменял и присваиваю не true в стучае авторизации , а цифру 1 например. Тоже самое
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wind  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Местная прописка
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 721
Пользователь №: 41530
На форуме: 1 год, 5 месяцев, 2 дня
Карма: 9




maruo
Цитата (AllesKlar @ 28.01.2016 - 23:02)
Подробнее тут: http://php.net/empty


Там черным по белому написано


Возвращает FALSE, если var существует, и содержит непустое и ненулевое значение. В противном случае возвращает TRUE.


Там и примеры ниже, есть


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maruo  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




Wind
То есть когда она определена срабатывает FALSE?
Эт че за такое? Нелогично как то получается реализована empty
Получается я прочитал неправильно и всего то.я в шоке сейчас от PHP

Это сообщение отредактировал maruo - 29.01.2016 - 00:08
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Медведь  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2482
Пользователь №: 37963
На форуме: 3 года, 3 месяца, 22 дня
Карма: 27




empty — Проверяет, считается ли переменная пустой. Переменная считается пустой, если она имеет значение:

"" (пустая строка)
0 (целое число)
0.0 (дробное число)
"0" (строка)
NULL
FALSE
array() (пустой массив)
$var; (переменная объявлена, но не имеет значения)


Возвращает FALSE, если var существует, и содержит непустое и ненулевое значение. В противном случае возвращает TRUE.


--------------------

Заходил 29.09.2016
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 25980
Пользователь №: 21350
На форуме: 6 лет, 8 месяцев, 18 дней
Карма: 725

Не курю:
1 год, 2 месяца, 4 дня


Медведь
боже мой, ты чё понаписал то там...


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Медведь  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2482
Пользователь №: 37963
На форуме: 3 года, 3 месяца, 22 дня
Карма: 27




Цитата (Игорь_Vasinsky @ 29.01.2016 - 07:31)
Медведь
боже мой, ты чё понаписал то там...

Что не так-то?


--------------------

Заходил 29.09.2016
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3375
Пользователь №: 38635
На форуме: 2 года, 11 месяцев, 5 дней
Карма: 170




Цитата (maruo @ 28.01.2016 - 21:23)
AllesKlar Прописал var_dump
До авторизации она имеет у меня значение NULL и выдает нотис как Undefined index: auth in
После авторизации INT(1)

До авторизации я ее нигде не прописываю и не определяю. Только в условии
Проблема в этом?

Тебе нотис выдался на var_dump.
Сам код у тебя корректный.


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maruo  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 19 дней
Карма: 1




AllesKlar да нотис не выдает ошибку все верно , это и в мануале написано что empty не формирует ошибку если переменная не существует.

Просто я невнимательно прочитал про empty вот и ошибка то вся
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса