Здравствуйте есть код Код (PHP): <?php echo '<form method="post">'; echo '<select name="table" size="1" >'; echo '<option selected="selected" value="second">Выберите ресурсы </option>'; echo '<option value="zerno"> Зерно </option>'; echo '<option value="kykyr"> Кукуруза </option>'; echo '<option value="lucern"> Люцерна </option>'; echo '<option value="korov"> Корова </option>'; echo '<option value="svin"> Свинья </option>'; echo '<option value="riba"> Рыба </option>'; echo '<option value="kombik"> Комбикорм </option>'; echo '<option value="xleb"> Хлеб </option>'; echo '<option value="myaso"> Мясо </option>'; echo '<option value="moloko"> Молоко </option>'; echo '<option value="navoz"> Навоз </option>'; echo '</select>'; echo '<input type="submit" value="Выбрать" />'; echo '</form>'; if ($_POST['table']=='zerno') $table=$_POST['table']; if ($_POST['table']=='kykyr') $table=$_POST['table']; if ($_POST['table']=='lucern') $table=$_POST['table']; if ($_POST['table']=='korov') $table=$_POST['table']; if ($_POST['table']=='svin') $table=$_POST['table']; if ($_POST['table']=='riba') $table=$_POST['table']; if ($_POST['table']=='kombik') $table=$_POST['table']; if ($_POST['table']=='xleb') $table=$_POST['table']; if ($_POST['table']=='myaso') $table=$_POST['table']; if ($_POST['table']=='moloko') $table=$_POST['table']; if ($_POST['table']=='navoz') $table=$_POST['table']; $stable=$_POST['table']; if(isset($stable)) { $qr_result1 = mysql_query("select * from tb_dom" . $table . " WHERE user_dom='$user'") or die(mysql_error()); } echo '<form method="post" enctype="multipart/form-data" accept-charset="uft-8">'; while($data = mysql_fetch_array($qr_result1)){ echo '<tr>'; echo '<td><select id="uname" name="uname"> <option value="'. $data['name'] .'">'. $data['name'] .'</option> </select></td>'; } ?> Но теперь при выводе выдает Table 'mrakr226_wond.tb_domzerno' doesn't exist хотя все таблицы и поля есть Где моя ошибка подскажите плз Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, любая другая разметка, результаты array/object dump и т. д.
учи английский ,чтобы понимать юмор. есть же гугл транслейт например. Код (Text): Table 'mrakr226_wond.tb_domzerno' doesn't exist написано: Таблица 'mrakr226_wond.tb_domzerno' не существует еще используй htmlspecialchars или strip_tags при получении данных из $_POST
Это я понимаю как сделать чтоб выборка была из база называется mrakr226_wond таблица tb_dom ячейка из которой нужно выбрать из списка Зерно zerno. почему так получается не пойму
zerno в названии таблицы лишнее если я тебя правильно понял, так как запрос вернёт все колонки, ты указал * значит если в таблице tb_dom будет колонка zerno, то ты её получишь. Добавлено спустя 2 минуты 34 секунды: mysql старая и удалена из PHP7, используй mysqli или PDO http://phpfaq.ru/pdo и подготовленные запросы, чтобы избежать проблем с безопасностью
изменил строку Код (PHP): $qr_result1 = mysql_query("select * from tb_dom WHERE user_dom='$user'") or die(mysql_error()); вместо результата из ячейки появился маленький выпадающий список пустой. что то я вообще в дебри залез. Помогите пожалуйста Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, любая другая разметка, результаты array/object dump и т. д.
Посмотри какой текст запроса формируешь и проверь его например в PHPMyAdmin чтобы быть уверенным, что он возвращает не пустой результат
Зачем такую чушь советовать? Особенно про htmlspecialchars... Единственное, что необходимо делать с данными перед отправкой в БД - это ескейпить, и то, только если не используются подготовленные запросы (что предпочтительнее) Stunnets, вместо mysql_query ставите die, в результате скрипт вылетит на этой строке, выведя в браузер запрос. Запрос копируете, запускаете в PHPMyAdmin, смотрите, что выдаётся. Если mysql матерится, убираем причину мата. Если запрос просто выдаёт не то, что нужно, но без мата, смотрим на таблицу, находим причину, корректируем запрос в PHPMyAdmin, так, чтоб работало. Меняем в программе, добиваемся, чтоб выводился такой же, после чего возвращаем mysql_query, и всё работает
сделал как сказал mkramer в PHPMyAdmin теперь не ругается и выводит данные выбранного поля код теперь такой Код (PHP): $stable=$_POST['table']; if(isset($stable)) { $qr_result1 = mysql_query("select `$stable` from tb_dom WHERE `user_dom`='$user'") or die(mysql_error()); while($row=mysql_fetch_array($qr_result1)); echo $row; } Но почему не выводит в браузере эти данные ? не правильно сделал $row ? Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, результаты array/object dump и т. д.
пишу не по поводу твой проблемы но замени верхние строчки Код (PHP): if ($_POST['table']) $table=$_POST['table'];
попробуй для начала не выводить массив через конструкцию echo. слышал это приводит к пятибуквенному результату.