SELECT `id` FROM `table` WHERE `login`='$login' AND `id` NOT LIKE '%$olg_id'
Что неправильно написал подскажите?
Спустя 3 минуты, 35 секунд (6.02.2012 - 13:22) nugle написал(а):
попробуй так
SELECT `id` FROM `table` WHERE `login`='$login' AND `id` <> 'olg_id'
Спустя 1 минута, 32 секунды (6.02.2012 - 13:23) GET написал(а):
SELECT `id` FROM `table` WHERE `login`='$login' AND `id` !='olg_id'
Спустя 1 минута, 37 секунд (6.02.2012 - 13:25) Xes написал(а):
вопщебы неплохо написать всю строку целиком т.к. тут не понятно что ты имеещь виду.
Можно предложить чтото типа ткого на альтернативу.
Точку с запятой в конце поставь ; :)
Можно предложить чтото типа ткого на альтернативу.
$qery="SELECT `id` FROM `table` WHERE `login`='".$login."' AND `id`<>'".$olg_id."' LIMIT 1"
Точку с запятой в конце поставь ; :)
Спустя 11 минут, 12 секунд (6.02.2012 - 13:36) panich написал(а):
Пробовал как Вы все указали ещё до того как сюда выложил и каждый раз при этих попытках (как и при моём, ранее приведённом примере) выдаёт просто белый экран-убираю и страница перезагружается...
Вот весь код:
Старый логин ещё ранее вытащил-тут не указал.Но его проверял и с ним всё нормально-без нареканий тут!
Вот весь код:
if (isset($_POST['login']))
{
$login = substr(mysql_real_escape_string(trim($_POST['login'])),0,30);
$login = htmlspecialchars($login);
if(get_magic_quotes_gpc())
{
$login = stripslashes($login);
}
if(!preg_match("/^[a-zA-Z0-9_\.\-]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,6}$/",$login))
{
exit ("<p>Логин не соответствует общепринятому(e-mail)!</p>
<a href='../znakomstva/page_user.php'>вернуться на свою страницу!</a>");
}
else
{
$sql10 = "SELECT `id` FROM `users` WHERE `login`='$login' AND `id` NOT LIKE '%$old_id'";
$result10 = mysql_query($sql10, $db)or die("Ошибка в запросе: " . mysql_error());
if (!$result10)
{
echo "ошибка - ".mysql_error()."<br>";
echo $sql10;
exit();
}
else
{
$myrow10 = mysql_fetch_assoc($result10);
if (!empty($myrow10['id']))
{
exit ("<p>Извините, введённый вами логин уже зарегистрирован. Введите другой логин.</p>
<a href='../znakomstva/page_user.php'>вернуться на свою страницу!</a>");
}
else
{
$sql11 = "UPDATE `users` SET `login`='$login' WHERE `login`='$old_login'";
$result11 = mysql_query($sql11, $db)or die("Ошибка в запросе: " . mysql_error());
if (!$result11)
{
echo "ошибка - ".mysql_error()."<br>";
echo $sql11;
exit();
}
else
{
$_SESSION['login'] = $login;
if (isset($_COOKIE['login']))
{
setcookie("login", $login, time()+9999999);
}
}
}
}
}
}
Старый логин ещё ранее вытащил-тут не указал.Но его проверял и с ним всё нормально-без нареканий тут!
Спустя 9 минут, 26 секунд (6.02.2012 - 13:46) nugle написал(а):
panich
выведи напрямую запрос(который я указал ранее, с таким же синтаксисом) и вставь его в бд, и тогда увидишь
выведи напрямую запрос(который я указал ранее, с таким же синтаксисом) и вставь его в бд, и тогда увидишь
Спустя 4 минуты, 24 секунды (6.02.2012 - 13:50) panich написал(а):
Ещё хотел уточнить-а тут всё правильно:
Или так нада:
???На всякий случай...
Я вконце скрипта не написал переадресовывание после выполнения на страницу пользователя-может ошибка банальна и она именно в этом?
`login`='$login' AND `id` <> 'olg_id'
Или так нада:
`login`='$login' AND `id` <> '$olg_id'
???На всякий случай...
Я вконце скрипта не написал переадресовывание после выполнения на страницу пользователя-может ошибка банальна и она именно в этом?
Спустя 2 минуты, 3 секунды (6.02.2012 - 13:52) GET написал(а):
panich
Команды exit в своем скрипте замени на echo'1'; echo'2';.... echo'N'; Чтоб увидеть на каком шаге глохнет
Команды exit в своем скрипте замени на echo'1'; echo'2';.... echo'N'; Чтоб увидеть на каком шаге глохнет
Спустя 57 секунд (6.02.2012 - 13:53) GET написал(а):
`login`='$login' AND `id` <> '$olg_id'
Спустя 1 минута, 15 секунд (6.02.2012 - 13:54) panich написал(а):
И раз уж так повезло с отзывчивостью-воспользуюсь моментом:
Вот этот код я написал перед загрузкой страницы,что бы безопасность увеличить.Попрошу Вас глянуть одним глазком и указать на ошибки,недочёты и упущенные моменты.Заранее благодарен!!!
<?php
session_start();
include ("bd.php");
if (isset($_COOKIE['auto']) and isset($_COOKIE['login']) and isset($_COOKIE['pass']))
{
if ($_COOKIE['auto'] == 'yes')
{
$_SESSION['pass'] = $_COOKIE['pass']."cR9i7Z";
$_SESSION['pass'] = strrev(md5(mysql_real_escape_string($_COOKIE['pass'])));
$_SESSION['login'] = mysql_real_escape_string($_COOKIE['login']);
$_SESSION['id'] = mysql_real_escape_string($_COOKIE['id']);
if (isset($_GET['id']))
{
$id = intval($_GET['id']);
}
if (!preg_match("|^[\d]+$|", $id))
{
exit("<p>Вы не являетесь владельцем этой страницы!<br>Неверно указан URL</p>");
}
else
{
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']))
{
$login = mysql_real_escape_string($_SESSION['login']);
$pass = mysql_real_escape_string($_SESSION['pass']);
$result3 = mysql_query("SELECT `id` FROM `users` WHERE `login`='$login' AND `pass`='$pass' LIMIT 1",$db);
$myrow3 = mysql_fetch_assoc($result3);
if (empty($myrow3['id']))
{
exit("Пользователя не существует! Возможно он был удален.Обратитесь в службу технической поддержки по адресу электронной почты bvstrechy@list.ru");
}
else
{
$_SESSION['id'] = $id;
header("Location:http://localhost/znakomstva/page_user.php?id='$id'");
}
}
}
}
}
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']) and !empty($_SESSION['id']))
{
$pass = mysql_real_escape_string($_SESSION['pass']);
$login = mysql_real_escape_string($_SESSION['login']);
$id = mysql_real_escape_string($_SESSION['id']);
if (isset($_GET['id']))
{
$id = intval($_GET['id']);
}
if (!preg_match("|^[\d]+$|", $id))
{
exit("<p>Вы не являетесь владельцем этой страницы!<br>Неверно указан URL</p>");
}
else
{
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']))
{
$result4 = mysql_query("SELECT `id` FROM `users` WHERE `login`='$login' AND `pass`='$pass' LIMIT 1",$db);
$myrow4 = mysql_fetch_assoc($result4);
if (empty($myrow4['id']))
{
exit("Пользователя не существует! Возможно он был удален.Обратитесь в службу технической поддержки по адресу электронной почты bvstrechy@list.ru");
}
else
{
if($id = $myrow4['id'])
{
$_SESSION['id'] = $id;
header("Location:http://localhost/znakomstva/page_user.php?id='$id'");
}
}
}
}
}
?>
Вот этот код я написал перед загрузкой страницы,что бы безопасность увеличить.Попрошу Вас глянуть одним глазком и указать на ошибки,недочёты и упущенные моменты.Заранее благодарен!!!
Спустя 2 минуты, 16 секунд (6.02.2012 - 13:57) GET написал(а):
include ("bd.php");
bd - Baza Dannyh - как учит Евгений Попов
db - Data Base - как правильно
bd - Baza Dannyh - как учит Евгений Попов
db - Data Base - как правильно
Спустя 54 секунды (6.02.2012 - 13:58) GET написал(а):
if (isset($_COOKIE['auto']) and isset($_COOKIE['login']) and isset($_COOKIE['pass']))
можно переписать
if (isset($_COOKIE['auto'],$_COOKIE['login'],$_COOKIE['pass']))
Думаешь безопасно в куки отправлять пароль?
можно переписать
if (isset($_COOKIE['auto'],$_COOKIE['login'],$_COOKIE['pass']))
Думаешь безопасно в куки отправлять пароль?
Спустя 3 минуты, 25 секунд (6.02.2012 - 14:01) panich написал(а):
Это я если пользователь автовход захочет реализовать.Слышал,что реализовать его можно через сессии как-то,но не искал,если честно...хотя следует,думаю.
Тут спасибо,а в остальном что ещё у меня "плохо" выглядит?
П.С.Вы правы,самый первый учитель у меня был-видеоурок от Попова.Уже год после этого слушаю как его хаят и меня носом тыкают за ошибки им допущенные.
Тут спасибо,а в остальном что ещё у меня "плохо" выглядит?
П.С.Вы правы,самый первый учитель у меня был-видеоурок от Попова.Уже год после этого слушаю как его хаят и меня носом тыкают за ошибки им допущенные.
Спустя 1 минута, 23 секунды (6.02.2012 - 14:02) GET написал(а):
Цитата |
if (!empty($_SESSION['login']) and !empty($_SESSION['pass'])) { $login = mysql_real_escape_string($_SESSION['login']); $pass = mysql_real_escape_string($_SESSION['pass']); $result3 = mysql_query("SELECT `id` FROM `users` WHERE `login`='$login' AND `pass`='$pass' LIMIT 1",$db); $myrow3 = mysql_fetch_assoc($result3); if (empty($myrow3['id'])) { exit("Пользователя не существует! Возможно он был удален.Обратитесь в службу технической поддержки по адресу электронной почты bvstrechy@list.ru"); } else { $_SESSION['id'] = $id; header("Location:http://localhost/znakomstva/page_user.php?id='$id'"); } } |
И
Цитата |
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']) and !empty($_SESSION['id'])) { $pass = mysql_real_escape_string($_SESSION['pass']); $login = mysql_real_escape_string($_SESSION['login']); $id = mysql_real_escape_string($_SESSION['id']); if (isset($_GET['id'])) { $id = intval($_GET['id']); } if (!preg_match("|^[\d]+$|", $id)) { exit("<p>Вы не являетесь владельцем этой страницы!<br>Неверно указан URL</p>"); } else ............ { |
Куски почти дублируются надо придумать, как их совместить
Спустя 4 минуты, 19 секунд (6.02.2012 - 14:07) panich написал(а):
Да как же там совместишь?
Сначала на куки проверяю,а потом сессии...
Сначала на куки проверяю,а потом сессии...
Спустя 6 минут, 18 секунд (6.02.2012 - 14:13) GET написал(а):
Цитата |
Да как же там совместишь? |
Вы спросили я ответил.
Вот здесь ошибка:
Цитата |
if($id = $myrow4['id']) |
'=' и '==' и '===' разные вещи
if ($id == $myrow4['id'])
Спустя 3 минуты, 8 секунд (6.02.2012 - 14:16) GET написал(а):