Переменная как имя таблицы в запрсе mysql есть $table_cat=$rowf[title_table];- переменная с названием таблицы PHP: $result = mysql_query("SELECT * FROM $table_cat"); Выдает ошибку. подскажите варианты синтаксиса или логики. Кто сталкивался.
$table_cat=$rowf['title_table']; - безрезультатно все равно ошибка. При echo $table_cat; выводит правильное название таблицы - spisok и при $result = mysql_query("SELECT * FROM spisok"); -правильно работает, а вот с $result = mysql_query("SELECT * FROM $table_cat"); - ошибка. Но, ошибку выдает на строку $rez = mysql_fetch_assoc($result);
Да ошибка такая при абсолютном задании названия таблицы, выборка с БД проходит, через переменную программа не видит название таблицы. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z:
query False возвращает.Попробуй банальную отладку запроса сделать: PHP: echo "SELECT * FROM $table_cat"; Часто помогает понять что именно query отправляет.И на будущее как минимум используй mysqli.
Вывело просто - SELECT * FROM . Однако при echo $table_cat; выводит правильное название таблицы - spisok
Ну вот видишь,дело тут не в функции.Давай дальше смотреть.Попробуй в целях опять же отладки сделать так: PHP: $table_cat = 'spisok'; echo "SELECT * FROM $table_cat";
Опять гадание на кофейной гуще... У вас проблема совсем не там, где вам кажется и пока вы не приведете код от момента где задается имя таблицы и до момента выполнения запроса, при чем без всяких сокращений и вырезок - ничего не выйдет.
PHP: <?php $teble_cat=$rowf[title_table]; function selectCat(){ $result = mysql_query("SELECT * FROM $teble_cat"); $cauntries = array(); while ($row = mysql_fetch_array($result)) { $cauntries[ ] = $row; } return $cauntries; }
С подборкой вариантов я не правильно написал не $rowf[spisok]; а $rowf[title_table]; - а берется с основного тела программы PHP: $box = ($_GET["box"]); $resultf = mysql_query("SELECT * FROM box_cat WHERE id_box = '$box'"); $rowf = mysql_fetch_array($resultf); --- Добавлено --- $teble_cat=$rowf[title_table]; echo $teble_cat; выдает название таблицы spisok
Ну тогда видимо я был прав.Пробуй так PHP: $teble_cat=$rowf[title_table]; function selectCat($cat){ $result = mysql_query("SELECT * FROM $cat"); $cauntries = array(); while ($row = mysql_fetch_array($result)) { $cauntries[ ] = $row; } return $cauntries; } ///// selectCat($teble_cat);
$teble_cat=$rowf[title_table]; echo $teble_cat; выдает название таблицы spisok В результате Fatal error: Call to undefined function selectCat() inZ: Возможно с selectCat($teble_cat); нужно покрутить --- Добавлено --- Чуть покрутил в место положении выдало - Warning: Missing argument 1 for selectCat(), called in Z: и Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z: