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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка в коде, элементарные азы MySQL 
V
    Опции темы
mr.Anderson
Дата 17.7.2006, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Вот код:
Код

<?php

 $db = "MyDatabase";

 mysql_connect( "localhost", "root" );

  $UserFLDS = "Num PRIMARY KEY AUTO_INCREMENT,
               User TINYTEXT NOT NULL,
               Password LONGBLOB NOT NULL";

  mysql_select_db( $db );

   mysql_query( "CREATE TABLE Users( ".$UserFLDS." )" );
   mysql_query( "INSERT INTO Users( User, Password ) VALUES( 'MyUser1', 'abcABC' )" );

   $res = mysql_query( "SELECT * FROM Users" );
   $cols = mysql_num_fields( $res );
   $rows = mysql_num_rows( $res );

   echo "Êîëîíîê (rows) ".$rows.", ïîëåé (cols) ".$cols;

 mysql_close();

?>

Но это не работает. Говорит, что у mysql_num_fields и mysql_num_rows задан неверный аргумент. Где я ошибся? 


--------------------
user posted image

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


Опытный
**


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

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



Стало быть Запрос SELECT вернул пустой ответ, т.к. таблица не создана, а не создана наверное потому что у Num не указан тип поля.
Код

Num PRIMARY KEY AUTO_INCREMENT
 


--------------------
Жить стало лучше, жить стало веселей
© И.В. Сталин 
PM MAIL ICQ   Вверх
mr.Anderson
Дата 17.7.2006, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Все равно не получается.
Код

<?php

 $db = "MyDatabase";

 mysql_connect( "localhost", "root" );

  $UserFLDS = "'Num' LONGINT AUTO_INCREMENT NOT NULL,
               'User' TINYTEXT NOT NULL,
               'Password' LONGBLOB NOT NULL,
               PRIMARY KEY( 'Num' )";

  mysql_select_db( $db );

   mysql_query( "CREATE TABLE 'Users'( ".$UserFLDS." )" );
   mysql_query( "INSERT INTO 'Users'( 'User', 'Password' ) VALUES( 'MyUser1', 'abcABC' )" );

   $res = mysql_query( "SELECT * FROM 'Users'" );
   $cols = mysql_num_fields( $res );
   $rows = mysql_num_rows( $res );

   echo "Êîëîíîê (rows) ".$rows.", ïîëåé (cols) ".$cols;

 mysql_close();

?>

Те же ошибки. 


--------------------
user posted image

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


Опытный
**


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

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



Код

$res = mysql_query( "SELECT * FROM 'Users'" );

Попробуй так:
Код

$res = mysql_query( "SELECT * FROM Users" );


Добавлено @ 20:06 
Да и
Код

 mysql_query( "INSERT INTO 'Users'( 'User', 'Password' ) VALUES( 'MyUser1', 'abcABC' )" );

Замени на:
Код

 mysql_query( "INSERT INTO Users( User, Password ) VALUES( 'MyUser1', 'abcABC' )" );
 


--------------------
Жить стало лучше, жить стало веселей
© И.В. Сталин 
PM MAIL ICQ   Вверх
mr.Anderson
Дата 17.7.2006, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Бесполезно. 


--------------------
user posted image

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


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



Код

   mysql_query( "CREATE TABLE Users( ".$UserFLDS." )" ) or die (mysql_error());    
   mysql_query( "INSERT INTO Users( User, Password ) VALUES( 'MyUser1', 'abcABC' )" )or die (mysql_error());

попробуй так... посмотри чем недоволен мускул

Добавлено @ 20:21 
тьфу.. вот так:
Код

$res = mysql_query( "SELECT * FROM 'Users'" )  or die (mysql_error()); 

 


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mr.Anderson
Дата 17.7.2006, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Ого...
Цитата

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 ''Num' LONGINT AUTO_INCREMENT NOT NULL, 'User' TI

Объясните плиз, что это означает. 


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
z-END
Дата 17.7.2006, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



имхо, ты неправильно создаешь таблицу, мне сейчас лень сервер запускать... зайди в пхпМойАдмин, создай такую-же таблицу, посмотри какой он выжает код и используй его. 


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
wsr
Дата 18.7.2006, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Fuzzy Logic
*


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

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



Все гораздо проще. Ошибка в SQL запросе из-за неправильных кавычек у имен полей таблицы. Т.е. когда мы создаем таблицу нужно писать 
Код

`field` PARAMS

а не 
Код

'field' PARAMS
 
--------------------
 ICQ : 918-318Сайт : Lock-Team 
PM MAIL WWW ICQ   Вверх
Shark
Дата 23.7.2006, 03:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 18.6.2006
Где: Москва

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



wsr, поддерживаю тебя
sim7, а ты вручную не можешь создать таблицу??? 


--------------------
Смерть - это только начало... 
Агентство недвижимости Premial
PM MAIL WWW ICQ   Вверх
DemoCode
Дата 24.7.2006, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(wsr @  18.7.2006,  09:57 Найти цитируемый пост)
Все гораздо проще. Ошибка в SQL запросе из-за неправильных кавычек у имен полей таблицы. Т.е. когда мы создаем таблицу нужно писать 

Так ему все об этом и говорят. Только разными словами  smile  


--------------------
Жить стало лучше, жить стало веселей
© И.В. Сталин 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




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


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

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