|
|
|
| Здравствуйте,
скажите пожалуйста почему не работает такая проверка:
$u = file('shadow/ps');
if($u[0] == $_POST['name'] && $u[1] == md5($_POST['password']))
{
/////
} | |
|
|
|
|
|
|
|
для: moonfox
(28.03.2012 в 00:08)
| | Как не работает? Что вы имеете ввиду под не работает?
- Просто не работает или при этом взрывается монитор?
- Может ножки стола сгорают?
- Выдает ошибку?
- Выдает белый экран?
- Происходит редирект на порносайт?
- Результат сравнения не совпадает с тем что вы ожидаете?
- Вместо результата вы видите код скрипта?
Нужное подчеркнуть )))) | |
|
|
|
|
|
|
|
для: Sfinks
(28.03.2012 в 00:23)
| | при совпадении массива из файл с данными из пост
выдает что они не идентичны
<?
if(isset($_POST['Submit']))
{
if($_POST['name'] != '' && $_POST['password'] != '')
{
$u = file('shadow/ps');
if($u[0] == $_POST['name'] && $u[1] == md5($_POST['password']))
{
echo 'вот эта проверка не прошла хотя $[0] и $u[1] соотвественно равны данным из пост'
$_SESSION['valid_user'] = '1';
$_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);
// header('Location:'.$_SERVER['HTTP_REFERER']);
}
else {
$smarty->assign('message', '2222!');
$smarty->display('login.tpl');
exit;
}
}
else
{
$smarty->assign('message','1111');
$smarty->display('login.tpl');
exit;
}
}
?>
|
| |
|
|
|
|
|
|
|
для: moonfox
(28.03.2012 в 00:27)
| | Скорее всего потому, что при загрузке данных функцией file(), файл на массив разбивается, но символы перевода строк в элементах массива остаются. Попробуйте так исправить:
<?php
if(trim($u[0]) == $_POST['name'] && trim($u[1]) == md5($_POST['password']))
|
| |
|
|
|
|
|
|
|
для: Sfinks
(28.03.2012 в 00:34)
| | заработало!
спасибо! | |
|
|
|
|
|
|
|
для: moonfox
(28.03.2012 в 00:36)
| | Я повторюсь! Оно и до этого работало! Просто не так, как вы ожидали. Если PHP работает, то скрипт не может не работать! | |
|
|
|
|
|
|
|
для: moonfox
(28.03.2012 в 00:27)
| | В таких случаях полезно перед проверкой вставить такой код:
<?php
$hash = md5($_POST['password']);
var_dump( $u[0] , $_POST['name'] , $u[1] , $hash );
| и станет ясно где что и почему не так. | |
|
|
|