[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не хочет писать в базу >_<
AlmazDelDiablo
Ругается страшной руганью на участок:
$db->query( "INSER INTO `" . USERPREFIX . "_users`
SET
`l2_acc_login` = '"
. mysql_escape_string( $_POST['l2_acc_nick'] ) ."'"
);


Ошибка:
MySQL Error! 
------------------------

The Error returned was:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSER INTO `cp_users` SET `l2_acc_login` = 'ololo'' at line 1

Error Number:
1064




Спустя 6 минут, 8 секунд (16.09.2010 - 20:34) waldicom написал(а):
Посомтрите на ошибку... INSER или INSERT?

Спустя 48 секунд (16.09.2010 - 20:35) AlmazDelDiablo написал(а):
И еще. Как можно прервать выполнение if? Например, если в нике есть запрещнный символ, то скрипт остановится и выдаст ошибку? Например у меня сейчас сделало так:

if( $_POST['l2_acc_nick'] == "" || $_POST['l2_acc_pass1'] == "" || $_POST['l2_acc_pass2'] == "" ) {		
msgbox( "Ошибка", "Все поля должны быть заполнены." );
}

Но при этом msgbox не генерируется, а аккаунт создается.

Спустя 1 минута, 34 секунды (16.09.2010 - 20:37) Xpund написал(а):
$_POST['l2_acc_nick'] == "" && $_POST['l2_acc_pass1'] == "" && $_POST['l2_acc_pass2'] == ""

МБ так получисья?

Спустя 4 минуты, 36 секунд (16.09.2010 - 20:41) AlmazDelDiablo написал(а):
Ну там несколько проверок и ни одну из них скрипт не выполняет.

if( $_POST['l2_acc_nick'] == "" || $_POST['l2_acc_pass1'] == "" || $_POST['l2_acc_pass2'] == "" ) {		
msgbox( "Ошибка", "Все поля должны быть заполнены." );
}

if( !preg_match("/^[a-z0-9_.-]+@([a-z0-9]+\.)+[a-z]{2,6}$/i", $_POST['l2_acc_nick'] . $_POST['l2_acc_pass1'] . $_POST['l2_acc_pass2'] ) ) {
msgbox( "Ошибка", "Логин и пароль должны состоять только из цифт и латинских букв." );
}

if( $_POST['l2_acc_nick'] > 15 || $_POST['l2_acc_nick'] < 1 || $_POST['l2_acc_pass1'] < 3 || $_POST['l2_acc_pass1'] > 15 ) {
msgbox( "Ошибка", "Логин должен быть не более 15и символов, а пароль не менее 3х и не более 15и" );
}

l2db_connent( $l2_acc_conf);
$l2_acc_nick_res = mysql_query( "SELECT COUNT(*) AS `cnt`
FROM `accounts`
WHERE `login` = '"
. mysql_escape_string( $_POST['l2_acc_nick'] ) ."'"
);
if( mysql_result($l2_acc_nick_res, 0) > 0 ) {
msgbox( "Ошибка", "Такой логин уже занят." );
}

Спустя 8 минут, 2 секунды (16.09.2010 - 20:49) Krevedko написал(а):
а что делает сия функция msgbox ? тут вроде не телепаты сидять, хотя может я ошибаюсь..

Спустя 1 минута, 10 секунд (16.09.2010 - 20:50) AlmazDelDiablo написал(а):
Просто выводит HTML-окошко с сообщением. Увы, но где задается эта функция я не знаю (родная функция ДЛЕ).

Спустя 2 минуты, 4 секунды (16.09.2010 - 20:52) Krevedko написал(а):
ну напиши внутри каждого иф-а после вызова этой функции
die();

Спустя 3 минуты, 29 секунд (16.09.2010 - 20:56) AlmazDelDiablo написал(а):
Теперь, после отправки данных (которые удовлетворяют проверке), просто белый лист. Никаких данных в базу не добавляется.

Спустя 17 минут, 44 секунды (16.09.2010 - 21:14) Krevedko написал(а):
не работает значит функция твоя


_____________
Блог | VK | GitHub | Twitch
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.