В чем ошибка ?

  • Автор темы Павлик 1717
  • Дата начала

Павлик 1717

Guest
В чем ошибка ?

Таблица:

Код:
$query="CREATE TABLE $table_name (
kat2_id int(11) NOT NULL auto_increment,
kat_id int(11),
kat2_npp int(11),
kat2_name varchar(255) NOT NULL default '',
PRIMARY KEY  (kat2_id)
) TYPE=MyISAM;";
Запрос:

Код:
$kat_id=2;

$query="SELECT kat2_name FROM $table_name  WHERE kat_id LIKE '$kat_id'";

$res=mysql_query($query,$connection)
      or die ( mysql_error() );
// достали
//считываем в массив
while ($row=mysql_fetch_array($res)){


$kat2_name = $row['$kat2_name']; 
echo" $kat2_name ";
}
Не дастает данные из поля несмотря на то что переменные в этих полячх есть, и в других файлах оно срабатывает, перекрестных переменных нет все передается явно, а что передалось заного не перечитывается...
 

Павлик 1717

Guest
Originally posted by Фанат
ответ на этот скараментальный вопрос находится в фундаментальном труде PHP FAQ: Ничего не работает! Что делать???
Фанат спасибо тебе, часть из этого я уже использовал, но и нашел ноыен приемы, так вот что он мне в результате вывел?
честно говоря следуя тому что там написано я решил обратится с более конкретным вопросом на форум.

Короче говоря скрипт устроен так что если чел жмет кнопку удалить то в hidden форме передается $dell=dell, тогда обращаемся к таблице в которой явно чтото есть лично ввел и через пхпадмин даже видно все лежит.


Notice: Undefined index: $kat2_name in z:\home\site\www\admin\update_kat.php on line 42
array(2) { ["dell"]=> string(4) "dell" ["kat_id"]=> string(1) "1" }
 

Фанат

oncle terrible
Команда форума
вот видишь.
ну прямо текст в действии!
одно дело - пялиться на код в тщетных попытках найти ошибку, а другое - вот она - на ладони!
Тебе же пишет открытым текстом:
обращаешься к массиву, в котором есть только индексы dell и kat_id
причем обращаешься по индексу $kat2_name
меняй индекс на существующий!
 

Павлик 1717

Guest
Originally posted by Фанат
вот видишь.
ну прямо текст в действии!
одно дело - пялиться на код в тщетных попытках найти ошибку, а другое - вот она - на ладони!
Тебе же пишет открытым текстом:
обращаешься к массиву, в котором есть только индексы dell и kat_id
причем обращаешься по индексу $kat2_name
меняй индекс на существующий!
Про индексы я не совсем понял но думаю моим языком будет тоже самое но другими словами.

Очень странно то что выуживая данные из базы в выуживаемых данных нужно указать еще и то которое уже известно, короче говоря вот оно где.

$query="SELECT kat_id,kat2_id, kat2_name, kat2_npp FROM $table_name WHERE kat_id LIKE '$kat_id'";

Короче нужгл было зачем то указать уже известный $kat_id.. Или я не прав... но у меня заработало. Хотя и мануал тоже помог... :) Санку.... вери матч....
 

Фанат

oncle terrible
Команда форума
не знаю я, что у тебя там заработало, но, видимо, ты исключил из скрипта вот этот вот кусок
$row['$kat2_name'];
поскольку естественно, в таблице у тебя и в помине нет поля с именем $kat2_name
 

Павлик 1717

Guest
Originally posted by Фанат
не знаю я, что у тебя там заработало, но, видимо, ты исключил из скрипта вот этот вот кусок
$row['$kat2_name'];
поскольку естественно, в таблице у тебя и в помине нет поля с именем $kat2_name
Еще раз:

как было:

$kat_id=2;

$query="SELECT kat2_name FROM $table_name WHERE kat_id LIKE '$kat_id'";

$res=mysql_query($query,$connection)
or die ( mysql_error() );
// достали
//считываем в массив
while ($row=mysql_fetch_array($res)){


$kat2_name = $row['$kat2_name'];
echo" $kat2_name ";
}

А так переделал


$table_name="kat2";

$db = mysql_select_db($db_name, $connection)
or die("не возможно выбрать базу");

$query="SELECT kat_id, kat2_id, kat2_name, kat2_npp FROM $table_name WHERE kat_id LIKE '$kat_id'";

$res=mysql_query($query,$connection)
or die("Не возможно выполнить запрос");
// достали
//выводим то что достали
while ($row=mysql_fetch_array($res)){

$kat2_name = $row['kat2_name']; //имя
$kat2_id = $row['kat2_id']; //имя

}


Короче черт знает в чем проблема не втом не в другом я ошибки не вижу, но только после того как считал kat_id при запросе к базе он почему то заработал....

Нонсонс... или чудеса программирования... :)
 

Фанат

oncle terrible
Команда форума
да хрен ли ты мне код-то свой по 10 раз показываешь и про чудеса рассказываешь?!
Я тебя два раза в ошибку носом ткнул!
Ты вообще читаешь то, что тебе пишут, или сам с собой поговорить пришел?
 

Павлик 1717

Guest
Originally posted by Panchous
вот тебе и чудеса...
Ребята не буду говорить что все произошедшее не что иное как глобальный маразм, но в таком случае боюсь лично оказаться в десять раз тупее маразма, вы не представляете себе мою скорбь по 3х дневной отладке скрипта, где ошибка лежит на самом верху, и ведь бывает же такое смотриш в книгу видиш фигу, вот со мной тоже самое и происходило.

Настоятельно требую в нести в вышеописаный мануал поправку от косоглазия, и не нужно искать ошибку а нужно просто проверить синтаксис, что я и делал неоднократно, во как оно бывает, все генисальное просто....

ну этоя не о скрипте :)

-~{}~ 18.02.05 15:03:

Originally posted by Фанат
да хрен ли ты мне код-то свой по 10 раз показываешь и про чудеса рассказываешь?!
Я тебя два раза в ошибку носом ткнул!
Ты вообще читаешь то, что тебе пишут, или сам с собой поговорить пришел?
Да ладно фанат не умничай :) проглядел ты значек доллара, а теперь меня говняешь, ну а я собственно признаю свою аплошность. :)
 

Фанат

oncle terrible
Команда форума
Ах, оказывается, это я проглядел?
Ну, допустим, оказывается это я виноват в том, что ты не увидел, из-а своего косоглазия, как я ткнул тебя носом сразу в этот значЕк.
Так оказывается, это я еще и должен был его ловить?!
А не до хрена ли ты, Павличек, хлебалочку-то раскрыл?

-~{}~ 18.02.05 15:12:

и как всегда, вопрос по косоглазию размещен в самом подходящем форeме - по mysql

И после внимательного прочтения правил. кто бы сомневался.
 

Павлик 1717

Guest
Originally posted by Фанат
Ах, оказывается, это я проглядел?
Ну, допустим, оказывается это я виноват в том, что ты не увидел, из-а своего косоглазия, как я ткнул тебя носом сразу в этот значЕк.
Так оказывается, это я еще и должен был его ловить?!
А не до хрена ли ты, Павличек, хлебалочку-то раскрыл?

-~{}~ 18.02.05 15:12:

и как всегда, вопрос по косоглазию размещен в самом подходящем форeме - по mysql

И после внимательного прочтения правил. кто бы сомневался.
И Опять то вы Фанатичек ЗЛОЙ!!! :) все говорят что красота спасет мир, а врезультате кругом одни Б..ди красивые но мир от них добрее и лучше не становится, так что думаю пора и задуматься о доброте людской :), да к д...дям относятся не только женьщины но и мужчины :) чтоб не думали что я дискриминирую так еще и гей!!!
 
Сверху