Вы не зашли.
Главная » PHP » PHP+MySQL
#871. Gemorroj Off (107)
Administrator
2011.01.11 20:08
не может быть 2 primary ключа. он по определению может быть только 1.
если на login стоит primary и все его отличие от обычного id в типе varchar, то разница особо заметна не будет. хотя int, конечно, всегда будет быстрее varchar
#872. tipsun Off (19)
Moderator
2011.01.11 22:10
Понял. СпС.
#873. tipsun Off (19)
Moderator
2011.01.15 20:08
Вот такой парадокс:
Код:
span style="color: #0000BB"><?php//Столбцы: id и who - int и unsigned$array = $sql->query("SELECT `id`, `who`, `login`, `pw` FROM `users` WHERE `login`='$login' LIMIT 1;")->fetch_assoc();$_SESSION['id'] = $array['id'];$_SESSION['who'] = $array['who'];//Почему тогда?$id = isset($_GET['id']) ? abs((int)$_GET['id']) : 0;if($_SESSION['id'] !== $id and 1 < $_SESSION['who']) { header('Location: /?-=usr'); exit(); }//Работает??>
Я уже нашел выход, но все же почему так, если я везде int указал в базе?

Код:
span style="color: #0000BB"><?php$_SESSION['id'] = (int)$array['id'];$_SESSION['who'] = (int)$array['who'];?>
Отредактировано tipsun (2011.01.15 20:08)
#874. Gemorroj Off (107)
Administrator
2011.01.15 23:11
потому что INT оно только в базе, а при выборке оно всегда string. это же php.
#875. tipsun Off (19)
Moderator
2011.01.15 23:11
СпС. Я думал что снова где-то при переделке ошибку допустил.
Отредактировано tipsun (2011.01.15 23:11)
#876. Gemorroj Off (107)
Administrator
2011.01.16 00:12
зачем ты проверяешь тип переменной? не нужно оно тебе.
#877. tipsun Off (19)
Moderator
2011.01.16 11:11
Я проверяю значение.
who = 1 - админ, 2 - модер, 3 - юзер;
Чтоб получить доспук к изменению своей анкеты надо чтоб авторизация совпадала с ид (который был отправлен формой) либо это был админ
Если оба значения неверны, то выкидывает на главную
Отредактировано tipsun (2011.01.16 11:11)
#878. Gemorroj Off (107)
Administrator
2011.01.16 15:03
проверка значения в твоем случае должна выглядеть как !=, ты же проверяешь не только значение, но и тип переменной, чего в твоем случае делать не нужно.
#879. tipsun Off (19)
Moderator
2011.01.16 16:04
АА. СПС))
А как быть с 1 < $_SESSION['who']
- Тип проверяться не будет?
- нет оказывается smile
Отредактировано tipsun (2011.01.16 17:05)
#880. Swinger Off (1)
Участник
2011.01.17 08:08
Надо легуляркой убрать все пробелы и переносы...
Но кроме текста тот, что в тэгах <pre> ... </pre>
Страниц: 186 87 88 89 90119 Все
Главная
WEB
PunBB Mod v0.6.2
0.034 s