есть код помогите вывести значение с помощью впадающего списка.
<?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'];
mysql_select_db("mrakr226_wond");
$result = mysql_query("SELECT id, user_dom FROM tb_dom") or die(mysql_error());
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
printf("ID: %s Имя: %s", $row[0], $row[1]);
}
echo "$result";
mysql_free_result($result);
?>
Но данные выбираются не из списка а из первых двух ячеек таблицы ID: 17 Имя: Marina. Получается нужно выводить не $row а как то докрутить что бы выводилось значение ($_POST['table']=='zerno') $table=$_POST['table']
извините что что то не догоняю, голова уже кипит(( Пожалуйста помогите вывести значение.
(Добавление)
переделал код:
<?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 хотя все таблицы и поля есть Где моя ошибка подскажите плз
1. Stunnets - 28 Февраля, 2016 - 16:16:27 - перейти к сообщению
2. suvidj3316 - 29 Февраля, 2016 - 00:26:38 - перейти к сообщению
Так понимаю, у тебя всё-таки таблица tb_dom есть, а не tb_domzerno?
Если в первом случае выводились данные, а во втрором - ошибка?
Если в первом случае выводились данные, а во втрором - ошибка?
3. Stunnets - 29 Февраля, 2016 - 01:41:59 - перейти к сообщению
изменил на вот такой запрос
$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_assoc($qr_result1)) {
print_r($row);
}
выдает строкой Array ( [xleb] => 800 ) как мне вывести в переменную только числа?
$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_assoc($qr_result1)) {
print_r($row);
}
выдает строкой Array ( [xleb] => 800 ) как мне вывести в переменную только числа?
4. Stunnets - 29 Февраля, 2016 - 19:55:22 - перейти к сообщению
может хоть кто подсказать где почитать про это ?
5. ytrewq123 - 29 Февраля, 2016 - 20:54:50 - перейти к сообщению
Чтобы выводило просто цифру напишите в цикле так.
print_r($row[xleb]);
Так как вытаскиваете ассоциативный массив.
И другие так же print_r($row[имя поля что выбираем]);
print_r($row[xleb]);
Так как вытаскиваете ассоциативный массив.
И другие так же print_r($row[имя поля что выбираем]);
6. Stunnets - 29 Февраля, 2016 - 21:27:08 - перейти к сообщению
спасибо ytrewq123 все выводит !!!
только как теперь пользоваться этими данными ? сделать чтоб они отображались в другом месте скрипта?
можно как то загнать эти данные в переменную и выводить где нужно по скрипту?
$vivod==(print_r($row[zerno]));
$vivod==(print_r($row[kykyr]));
$vivod==(print_r($row[lucern]));
$vivod==(print_r($row[korov]));
что бы потом можно было вывести в строке
<td>Кол-во:<? $vivod ?></td>
сейчас выводит просто 1
только как теперь пользоваться этими данными ? сделать чтоб они отображались в другом месте скрипта?
можно как то загнать эти данные в переменную и выводить где нужно по скрипту?
$vivod==(print_r($row[zerno]));
$vivod==(print_r($row[kykyr]));
$vivod==(print_r($row[lucern]));
$vivod==(print_r($row[korov]));
что бы потом можно было вывести в строке
<td>Кол-во:<? $vivod ?></td>
сейчас выводит просто 1
7. LIME - 01 Марта, 2016 - 07:54:35 - перейти к сообщению
ytrewq123 пишет:
включи вывод ошибок и наблюдай как интерпретатор сначала пытается найти константу xlebprint_r($row[xleb]);
не забывать кавычки для ключей массива
Stunnets пишет:
не получится просто потому что это циклэти данные в переменную
и на каждой итерации отдается новый массив
если же это только один ряд то цикл никчему
впрочем в порядке бреда и в стиле предыдущих ответов
(Добавление)
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- $vivod[] = $row;
- }
- echo '<pre>';
- echo $vivod[0]['zerno'];
- echo $vivod[1]['zerno'];
- echo '</pre>';