$table = "cities";
$sql = "SELECT id, title FROM $table";
$dbdata = mysql_query ($sql, $conn);
$pagedata = mysql_fetch_array ($dbdata);
do{printf("<p><h2><a href='city.php?id=%s'>>%s</a></h2></p>", $pagedata[id], $pagedata[title]);}
while ($pagedata = mysql_fetch_array($dbdata));
Пытаюсь этот же код перенести в фукцию:
function getList ($tableName){
$sql = "SELECT id, title FROM $tableName";
$dbdata = mysql_query ($sql, $conn);
$pagedata = mysql_fetch_array ($dbdata);
do{printf("<p><h2><a href='city.php?id=%s'>%s</a></h2></p>", $pagedata[id], $pagedata[title]);}
while ($pagedata = mysql_fetch_array($dbdata));
}
Вот тут-то, при использовании функции getList("cities"); строка с mysql_query начинает ругаться из-за неправильного аргумента
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource.
Почему один и тот же запрос работает отдельно и не работает в функции? СПАСИБО
Спустя 8 минут, 44 секунды (27.06.2011 - 20:56) bodja написал(а):
$dbdata = mysql_query ($sql, $conn);
И наверное не только этот.
И наверное не только этот.
Спустя 5 минут, 52 секунды (27.06.2011 - 21:02) malxic написал(а):
сделать $conn глобальной? не пойму в чем дело
Спустя 6 минут, 4 секунды (27.06.2011 - 21:08) bodja написал(а):
$tmp=1;
function test() {
$tmp=2;
echo 'значение переменой внутри функции'.$tmp;
}
echo 'значение переменой за функциями'.$tmp;
Спустя 2 минуты, 55 секунд (27.06.2011 - 21:11) malxic написал(а):
Точно! Помогло! Заработало!
Теперь просто вызываю getList("cities"); где cities название таблицы из которой вывожу список столбца title с соответствующей иконкой
function getList ($tableName){
global $conn;
$sql = "SELECT id, title FROM $tableName";
$dbdata = mysql_query ($sql, $conn);
$pagedata = mysql_fetch_array ($dbdata);
do{
printf("<p><h2><a href='city.php?id=%s'><IMG SRC='img/esc/%s.gif'>%s</a></h2></p>",
$pagedata[id],$pagedata[id],$pagedata[title]);
}
while ($pagedata = mysql_fetch_array($dbdata));
}
Теперь просто вызываю getList("cities"); где cities название таблицы из которой вывожу список столбца title с соответствующей иконкой
Спустя 2 минуты, 40 секунд (27.06.2011 - 21:14) bodja написал(а):
function getList ($tableName,$conn)
global $conn;
Спустя 6 минут, 51 секунда (27.06.2011 - 21:21) malxic написал(а):
Без "global $conn;" не идет! ;-) а как я написал - без проблем. Спасибо))))
$conn инклюдится, поэтому фунция изнутри ее не видела пока я ее не объявил глобальной.
$conn = mysql_connect(DB_HOST, DB_LOGIN, DB_PASSWORD) or die("Не могу соединиться с сервером БД");
$conn инклюдится, поэтому фунция изнутри ее не видела пока я ее не объявил глобальной.
$conn = mysql_connect(DB_HOST, DB_LOGIN, DB_PASSWORD) or die("Не могу соединиться с сервером БД");
Спустя 57 минут, 5 секунд (27.06.2011 - 22:18) bodja написал(а):
getList ($tableName,$conn);
///
///
function getList ($tableName,$conn){
///
}
///
///
function getList ($tableName,$conn){
///
}
Спустя 10 часов, 4 минуты, 8 секунд (28.06.2011 - 08:22) linker написал(а):
Вот это ужасное поповское
$dbdata = mysql_query ($sql, $conn);заменить на нормальное
$pagedata = mysql_fetch_array ($dbdata);
do{printf("<p><h2><a href='city.php?id=%s'>%s</a></h2></p>", $pagedata[id], $pagedata[title]);}
while ($pagedata = mysql_fetch_array($dbdata));
$dbdata = mysql_query ($sql, $conn);
while ($pagedata = mysql_fetch_array($dbdata));
{
echo '<p><h2><a href="city.php?id=' . $pagedata['id'] . '">' . $pagedata['title'] . '</a></h2></p>';
}
Спустя 1 час, 35 минут, 48 секунд (28.06.2011 - 09:58) m4a1fox написал(а):
linker
Вы тоже заметили! А я подумал глюки!
Вы тоже заметили! А я подумал глюки!

Спустя 7 часов, 13 секунд (28.06.2011 - 16:58) killer8080 написал(а):
linker
опечаточка, лишняя ";" после скобок.
опечаточка, лишняя ";" после скобок.
Спустя 1 месяц, 3 дня, 3 часа, 50 минут, 40 секунд (1.08.2011 - 20:49) malxic написал(а):
Цитата |
Вот это ужасное поповское |
Всем спасибо, чего только не нахватаешься в rutracker и поповского в том числе))))))
Исправил, спасибо!
Спустя 18 минут, 25 секунд (1.08.2011 - 21:07) malxic написал(а):
bodja
Спасибо, так тоже работает, извеняюсь за невнимание - изучаю РНР наскоками.
а $pagedata можно использовать на тойже странице, чтоб не обращаться к БД?
Спасибо, так тоже работает, извеняюсь за невнимание - изучаю РНР наскоками.
а $pagedata можно использовать на тойже странице, чтоб не обращаться к БД?