Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Занесение данных из формы в MySQL, не записывается... 
V
    Опции темы
QaaZ
  Дата 15.10.2008, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Привет, проблема такая, в бд не записываются данные...Вроде всё верно, а всё равно в базу не записывается...(

Вот код:
Подключени и выбор БД:
Код

// Подключаемся к БД
@$dbconnect = new mysqli(
                        "$dbhost",
                        "$dbuser",
                        "$dbpass",
                        "$dbname");


    if (!$dbconnect) {
                         echo "<br>Неудалось подключиться к базе данных.";
                     }
//Выбираем БД
    mysqli_select_db($dbconnect,$dbname);
        if (!@mysqli_select_db($dbconnect,$dbname)) 
                    {
                        echo( "<P> В настоящий момент база данных не доступна.</P>" );
 
                   }


Добавлении записи:
Код

$sql = "INSERT INTO `$dbname`.`login` (`Username`, `Password`, `Gender`,`IsActivated`, `DateOfBirth`, `DateOfRegistration`) VALUES (\'$login\', \'$passwd\', \'$sex\', \'1\',\'$date\', \'$reg_date\')";
$res = mysqli_query($dbconnect,$sql);


Это сообщение отредактировал(а) MoLeX - 16.10.2008, 05:48
PM MAIL   Вверх
HackMan
Дата 15.10.2008, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Может где ошибся в названии полей?
зы. зачем БД выбирается 2 раза?

Это сообщение отредактировал(а) HackMan - 15.10.2008, 19:30


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
QaaZ
Дата 15.10.2008, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Нет, там всё ок. :( 


Цитата

зы. А зачем БД выбирается 2 раза?


Это я уже увлёкся когда искал ошибку... :(

Это сообщение отредактировал(а) QaaZ - 15.10.2008, 19:32
PM MAIL   Вверх
HackMan
Дата 15.10.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



А зачем слэши перед кавычками?


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
unicross
Дата 15.10.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 422
Регистрация: 15.6.2008

Репутация: 21
Всего: 53



Цитата(QaaZ @ 15.10.2008,  19:14)


$sql = "INSERT INTO `$dbname`.`login` (`Username`, `Password`, `Gender`,`IsActivated`, `DateOfBirth`, `DateOfRegistration`) VALUES (\'$login\', \'$passwd\', \'$sex\', \'1\',\'$date\', \'$reg_date\')";
$res = mysqli_query($dbconnect,$sql);
[/code]


Зачем экранируете апострофы? Это ошибка!

Код

VALUES ('$login', '$passwd', '$sex', '1', '$date', '$reg_date')


Цитата

`$dbname`.`login`


Это что такое??? Слияние двух строк? Или что?
Нужно чтобы было примерно так:

Код

INSERT INTO `City` (`id_City`, `City`) VALUES (1, 'Санкт-Петербург')


PM MAIL WWW   Вверх
Валерия
Дата 15.10.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

Репутация: 3
Всего: 8



Цитата(QaaZ @  15.10.2008,  19:14 Найти цитируемый пост)
$res = mysqli_query($dbconnect,$sql);

Ты местами перепутал аргументы smile
(обновленонет, в самом деле не перепутал)
И 
Код

 mysqli_select_db($dbconnect,$dbname);

можешь не делать, как выше подсказывают. Достаточно того что в if

Это сообщение отредактировал(а) Валерия - 15.10.2008, 19:31
PM MAIL   Вверх
HackMan
Дата 15.10.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Цитата(Валерия @  15.10.2008,  19:30 Найти цитируемый пост)
Ты местами перепутал аргументы smile

не-не-не, там всё правильно

Цитата(unicross @  15.10.2008,  19:30 Найти цитируемый пост)
Это что такое??? Слияние двух строк? Или что?

это не слияние двух строк, а бессмысленное указание, из какой БД таблица


Это сообщение отредактировал(а) HackMan - 15.10.2008, 19:33


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
QaaZ
Дата 15.10.2008, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Код

`$dbname`.`login`



У меня база имеет вид:
[*]baza
------[*]_login
------[*]_world


Это сообщение отредактировал(а) QaaZ - 15.10.2008, 19:37
PM MAIL   Вверх
unicross
Дата 15.10.2008, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 422
Регистрация: 15.6.2008

Репутация: 21
Всего: 53



База данных у вас уже выбрана ранее. Можно просто 

Код

`login`


Так пробывали

Код

$sql = "INSERT INTO `login` (`Username`, `Password`, `Gender`,`IsActivated`, `DateOfBirth`, `DateOfRegistration`) VALUES ('$login', '$passwd', '$sex', '1', '$date', '$reg_date')";


или так (если поля идут по порядку конечно)

Код

$sql = "INSERT INTO `login` VALUES ('$login', '$passwd', '$sex', '1', '$date', '$reg_date')";


Это сообщение отредактировал(а) unicross - 15.10.2008, 19:46
PM MAIL WWW   Вверх
QaaZ
Дата 15.10.2008, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Цитата

База данных у вас уже выбрана ранее. Можно просто `login`


Цитата

это не слияние двух строк, а бессмысленное указание, из какой БД таблица



Это я уже увлёкся когда искал ошибку... :(


Цитата

INSERT INTO `City` (`id_City`, `City`) VALUES (1, 'Санкт-Петербург')


Всё равно не записывает...
PM MAIL   Вверх
unicross
Дата 15.10.2008, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 422
Регистрация: 15.6.2008

Репутация: 21
Всего: 53



Зачем вы вначане пользуетесь объектным стилем, а затем процедурным???
Надо примерно так:

Код

@$dbconnect = new mysqli(
                        "$dbhost",
                        "$dbuser",
                        "$dbpass",
                        "$dbname");


if (!$dbconnect) {
                         echo "<br>Неудалось подключиться к базе данных."; exit();
                     }
//Выбираем БД
        if (!@$dbconnect->mysqli_select_db($dbname)) 
                    {
                        echo "<P> В настоящий момент база данных не доступна.</P>" ); exit();
 
                   }

$sql = "INSERT INTO `login` (`Username`, `Password`, `Gender`,`IsActivated`, `DateOfBirth`, `DateOfRegistration`) VALUES ('$login', '$passwd', '$sex', '1', '$date', '$reg_date')";
$res = $dbconnect->mysqli_query($sql);



Это сообщение отредактировал(а) unicross - 15.10.2008, 19:56
PM MAIL WWW   Вверх
QaaZ
Дата 15.10.2008, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



А так выдаёт ошибку :

Код

Fatal error: Call to undefined method mysqli::mysqli_query() in D:\www\register\registration.php on line 90

PM MAIL   Вверх
HackMan
Дата 15.10.2008, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



id_City у тебя автоинкремент? Если да, то опусти его

Код
INSERT `City` SET `City`='Санкт-Петербург'


Это сообщение отредактировал(а) HackMan - 15.10.2008, 20:00


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
unicross
Дата 15.10.2008, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 422
Регистрация: 15.6.2008

Репутация: 21
Всего: 53



Замени 

Код

$res = $dbconnect->mysqli_query($sql);


на

Код

$res = $dbconnect->query($sql);


Я просто забыл убрать лишнее.
PM MAIL WWW   Вверх
QaaZ
Дата 15.10.2008, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Заменил, всё равно не помогает.. х_х 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0571 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.