[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Error: Table '*' doesn't exist хотя она есть
Fanamura
Простейший код (на данные не смотрим), который должен записывать данные из формы в БД
PHP
<?php

$con 
mysql_connect("localhost","test","test");
if (!
$con)
  {
  die(
'Could not connect: ' mysql_error());
  }

mysql_select_db("amurteam2010"$con) or die ('Не могу выбрать БД');

$sql="INSERT INTO jos_joomleague_chara
VALUES
('$_POST[pyatak]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]','$_POST[bort]')"
;

if (!
mysql_query($sql,$con))
  {
  die(
'Error: ' mysql_error());
  }
echo 
"1 record added";



Выдает:
Error: Table 'amurteam2010.jos_joomleague_chara' doesn't exist ХОТЯ ТАБЛИЦА ЕСТЬ, название указано верное и т.д. Вообщем, я в растерянности, в чем проблема?



Спустя 51 минута, 38 секунд (1.08.2009 - 18:19) Sylex написал(а):
Fanamura
сделай лучше SHOW TABLES;
убедись что буква в букву совпадает название таблицы... вдруг случайно одну букву русскую поставил

и еще... перемернные ты неправильно пишешь, надо брать их в фигурные скобки, и в кавычки ключи:
,'{$_POST['bort']}'

Спустя 13 минут, 29 секунд (1.08.2009 - 18:33) Krevedko написал(а):
кстати такой вопрос..почему в запросе не пишут например WHERE id='$id', а любят писать с конкатенацией ?

Спустя 1 час, 43 минуты, 47 секунд (1.08.2009 - 20:17) Sylex написал(а):
Krevedko
да почему? Когда как удобно - так и делают, не заморачивайся сильно уж...

вот, например, если поле числовое, то не надо брать его в кавычки:
PHP
mysql_query("SELECT * FROM table WHERE id = '{$id}'");


можно проще и понятней:

PHP
mysql_query('SELECT * FROM table WHERE id = ' $id)

Спустя 20 минут, 45 секунд (1.08.2009 - 20:37) Krevedko написал(а):
Я вообще пишу

PHP
mysql_query("SELECT * FROM table WHERE id = '$id' ORDER BY id");


мне кажется это проще чем

PHP
mysql_query("SELECT * FROM table WHERE id = ".$id." ORDER BY id");


и зачем брать в фигурные {} скобки ?

Спустя 6 минут, 59 секунд (1.08.2009 - 20:44) kirik написал(а):
Цитата (Krevedko @ 1.08.2009 - 12:37)
и зачем брать в фигурные {} скобки ?

Затем чтобы не конкатенировать в двойных кавычках smile.gif Так виднее переменную и симпотичнее выглядит.

PHP
"SELECT * FROM ".$table." WHERE `id` = '".$id."' AND `field2` = '".$field2."' ORDER BY `id`"

или
PHP
"SELECT * FROM {$table} WHERE `id` = '{$id}' AND `field2` = '{$field2}' ORDER BY `id`"

Спустя 1 час, 58 минут, 7 секунд (1.08.2009 - 22:42) Alchemist написал(а):
и быстрее работает tongue.gif

Спустя 19 минут, 2 секунды (1.08.2009 - 23:01) Krevedko написал(а):
это что ж мне теперь все запросы переписывать ? blink.gif

Спустя 1 час, 20 минут, 16 секунд (2.08.2009 - 00:22) kirik написал(а):
Цитата (Krevedko @ 1.08.2009 - 15:01)
это что ж мне теперь все запросы переписывать ?

Зачем? Просто новые пиши так, а старые оставь)

Спустя 15 минут, 25 секунд (2.08.2009 - 00:37) Krevedko написал(а):
а потом начнется..ты не придерживаешься стиля....

у меня и так часть кода написана в одном ключе, другая часть в другом...
по коду можно определить, с чего начинал..дальше там умнее идет biggrin.gif

Спустя 1 час, 54 минуты, 4 секунды (2.08.2009 - 02:31) kirik написал(а):
Цитата (Krevedko @ 1.08.2009 - 16:37)
по коду можно определить, с чего начинал..дальше там умнее идет

Так будет еще довольно долго smile.gif

Спустя 5 часов, 41 минута, 31 секунда (2.08.2009 - 08:13) Guest написал(а):
Заработало так:
PHP
$sql="INSERT INTO `amurteam2010`.`jos_joomleague_chara`
VALUES
('NULL','$_GET[id]','$_POST[pyatak]','$_POST[bort]','$_POST[cheki]','$_POST[kombi]','$_POST[skorost]','$_POST[sila]','$_POST[vinosl]','$_POST[dalnbro]','$_POST[blibro]','$_POST[starat]','$_POST[master]','$_POST[neravn]','$_POST[text_hock]','$_SERVER[REMOTE_ADDR]')"
;


Спустя 1 день, 22 минуты, 31 секунда (3.08.2009 - 08:35) sergeiss написал(а):
Цитата (kirik @ 2.08.2009 - 03:31)
Цитата (Krevedko @ 1.08.2009 - 16:37)
по коду можно определить, с чего начинал..дальше там умнее идет

Так будет еще довольно долго smile.gif

Оффтоп: "И это правильно!" (М.С.Горбачев) smile.gif

Я тоже постоянно нахожу в своих же "старых" скриптах много того, чего можно наоптимизировать. Вот только некогда (да и имеет ли смысл?) переделывать. Можно же ведь и ошибок насажать, которые потом долго искать будешь.

Спустя 2 часа, 10 минут, 34 секунды (3.08.2009 - 10:46) Alchemist написал(а):
Первое Правило Программиста: "Не трогай работающую систему !!!"
Быстрый ответ:

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