Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

14.01.2010, 13:37
|
|
Познающий
Регистрация: 02.06.2008
Сообщений: 35
Провел на форуме: 29238
Репутация:
5
|
|
Есть вот такой кусок кода:
Код:
$user=$row['nick'];
if (preg_match("/me", $msg, $msg_1))
{
$msg=str_replace ("/me","<i>".$user."",$msg);
$user="";
}
он не работает на второй строчке
надо: Если строка $msg начинается на "/me" то выполнить действие ниже
|
|
|

14.01.2010, 13:46
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
1. Неверная регулярка.
2. Неверная тема
|
|
|

14.01.2010, 20:56
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
1. При регистрации в поле записывается логин, например, XxX. Почему в форме входа на сайт катит также xxx, XXx? т.е. нету чувствительности к регистру.
2. Если при запросе WHERE id не существует, то выводится ошибка (предупреждение). Как правильно проверять поле на существование?
3. Какая пропорциональная зависимость между проиндексированным столбиком и не проиндексированным?
Последний раз редактировалось vorona; 14.01.2010 в 22:41..
|
|
|

14.01.2010, 22:41
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от vorona
При регистрации в поле записывается логин, например, XxX. Почему в форме входа на сайт катит также xxx, XXx? т.е. нету чуствительности к регистру.
Скорей всего функция сравнения (на PHP, к примеру) логина с эталоном, сравнивает их в нижнем регистре.
|
|
|

14.01.2010, 22:42
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
Сообщение от GlooK
Скорей всего функция сравнения (на PHP, к примеру) логина с эталоном, сравнивает их в нижнем регистре.
Ну я перед этим строку обрабатываю htmlentities в вин-1251 кодировке. Это ж не может влиять?
|
|
|

14.01.2010, 22:48
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от vorona
Ну я перед этим строку обрабатываю htmlentities в вин-1251 кодировке. Это ж не может влиять?
Кусок кода выложи хотя бы...
|
|
|

14.01.2010, 22:54
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
PHP код:
function xxx($var)
{
$var=htmlentities($var, ENT_QUOTES, 'Windows-1251');
return $var;
}
$_POST = array_map("xxx",$_POST);
..................
if(count($_POST)>0){
$_POST['login']=substr($_POST['login'],0,20);
$_POST['pass']=substr($_POST['pass'],0,20);
$sum=0;
echo '<center><b>При ыходе были допущены такие <font color="red">ошибки</font>:</b></center><br>';
if(!isset($_SESSION['captcha_keystring']) || $_SESSION['captcha_keystring'] !== $_POST['keystring']){
echo '<br><font color="red">Неверно введен проверочный код.</font><br>';
$sum=$sum+1;
}
if (!isset($_POST['login']) || strlen($_POST['login'])<3)
{
echo '<br><font color="red">Не введён логин или он слишком короткий.</font><br>';
$sum=$sum+1;
}
if (!isset($_POST['pass']) || strlen($_POST['pass'])<3)
{
echo '<br><font color="red">Не введён пароль или он слишком короткий.</font><br>';
$sum=$sum+1;
}
if (!preg_match("/^([a-zA-Z0-9]+)$/", $_POST['login']))
{
echo '<br><font color="red">В поле "логин" присутствуют недопустимые символы.</font><br>';
$sum=$sum+1;
}
if (!preg_match("/^([a-zA-Z0-9]+)$/", $_POST['pass']))
{
echo '<br><font color="red">В поле "пароль" присутствуют недопустимые символы.</font><br>';
$sum=$sum+1;
}
$sql = 'SELECT * FROM `users` WHERE `login`="'.$_POST['login'].'"';
$r=mysql_query($sql,$conn);
$row=mysql_fetch_row($r);
if ($row[1]!=="" && isset($row[1]) && $row[2]!==md5($_POST['pass']))
{
echo '<br><font color="red">Неверный логин или пароль.</font><br>';
$sum=$sum+1;
}
if (!isset($row[1]))
{
echo '<br><font color="red">Неверный логин или пароль.</font><br>';
$sum=$sum+1;
}
if ($sum==0) {
действия
}
}
|
|
|

14.01.2010, 23:57
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
Всё, сам нашел ошибку.
Ответьте пжлст на 2 и 3 вопросы.
|
|
|

15.01.2010, 13:13
|
|
Познающий
Регистрация: 02.06.2008
Сообщений: 35
Провел на форуме: 29238
Репутация:
5
|
|
Вопрос:
В таблице есть ячейка id. Она без auto_increment (Он мешает другой функции)
Надо: вписать строку и присвоить ячейке id число, так, как это делает auto_increment
напр. если в предыдущей строке id было 14, зваисываем 15
как это делается?
|
|
|

15.01.2010, 13:31
|
|
♠ ♦ ♣ ♥
Регистрация: 18.05.2006
Сообщений: 1,828
Провел на форуме: 8042357
Репутация:
3742
|
|
vorona
2. describe table column и смотреть что вернет (аналог show columns)
3. не понял вопрос?тт если это то, о чем я подумал - любые селекты по проиндексирвоанны намного быстрее.)
Freakazoitt
селекти max(id) и увеличивай его на 1...
__________________
Привет! Меня зовут Джордж, и я хотел бы рассказать вам про реинкарнацию (ц) 2x2
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|