[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Выборка из БД и вставка данных в <select></select>
VTD
Есть 4 таблицы в БД, откуда берется инфа, потом по средствам форм, если быть точнее селекта, хочу сделать выборку с определенной базы, а потом выбранное занести в новую таблица.

Делаю так:

$table1 = "list_5x5";
mysql_connect($hostname, $username, $password) or die ("Не могу создать соединение");
mysql_select_db($dbName) or die (mysql_error());
$query1 = "SELECT id, clan FROM $table1";
$res1 = mysql_query($query1) or die(mysql_error());

Сам Селект:

echo "<select name=\"clan1\" style=\"width:75px\">";
while ($cl1 = mysql_fetch_array($res1))
{
echo "<option name=\"clan1\" value='" . $cl1['clan'] . "'>".$cl1['clan']."</option>";
}
echo " </select>";


Но когда я делаю так:

$table1 = "list_5x5";
$table2 = "s_date";
$table3 = "s_month";

mysql_connect($hostname, $username, $password) or die ("Не могу создать соединение");
mysql_select_db($dbName) or die (mysql_error());

$query1 = "SELECT id, clan FROM $table1";
$query2 = "SELECT id, dt FROM $table2";
$query3 = "SELECT id, mn FROM $table3";

$res1 = mysql_query($query1) or die(mysql_error());
$res2 = mysql_query($query1) or die(mysql_error());
$res3 = mysql_query($query2) or die(mysql_error());
$res4 = mysql_query($query3) or die(mysql_error());

Селекты:

echo "<select name=\"clan1\" style=\"width:75px\">";
while ($cl1 = mysql_fetch_array($res1))
{
echo "<option name=\"clan1\" value='" . $cl1['clan'] . "'>".$cl1['clan']."</option>";
}
echo " </select>";

echo "<select name=\"clan2\" style=\"width:75px\">";
while ($cl2 = mysql_fetch_array($res2))
{
echo "<option name=\"clan2\" value='" . $cl2['clan'] . "'>".$cl2['clan']."</option>";
}
echo "</select>";

echo "<select name=\"s_date\" style=\"width:37px\">";
while ($dt = mysql_fetch_array($res3))
{
echo "<option name=\"s_date\" value='" . $dt['dt'] . "'>".$dt['dt']."</option>";
}
echo " </select>";

echo "<select name=\"s_month\" style=\"width:37px\">";
while ($mn = mysql_fetch_array($res4))
{
echo "<option name=\"s_month\" value='" . $mn['mn'] . "'>".$mn['mn']."</option>";
}
echo " </select>";

То последний (4) селект тупо нехочеш работать. Т.е. он работает, но не так как нужно. Селект не показывает, а просто перечисляет данные с определенной таблицы.

Вот так вопрос, как по средствам хтмл + пхп, сделать больше 3 селектов.



Спустя 30 минут, 9 секунд (27.10.2010 - 12:55) sergeiss написал(а):
Во-первых не понятно, зачем тебе $res1 и $res2? Данные же выбираются согласно одного запроса!!! Тут уже упростить можно, и достаточно заметно.
А во-вторых - что у тебя там за данные? Числа, текст или еще что? Если текст, то он, возможно, содержит какие-то спецсимволы. Тогда надо использовать htmlspecialchars() и/или addslashes().

Ты посмотри в браузере код готовой страницы, ту часть, где находится этот "4-й селект"! И лучше даже покажи этот готовый код здесь. Подумаем, что там "не так".

PS. И еще... Почему ты для name используешь двойные кавычки, а для value - одинарные?

Спустя 32 минуты, 49 секунд (27.10.2010 - 13:27) VTD написал(а):
Вопрос решен, проблемы была в незакрытии тега <td

Спустя 2 минуты, 31 секунда (27.10.2010 - 13:30) sergeiss написал(а):
VTD - это один вопрос решён smile.gif А я тебе про еще одну проблему говорил, которую не решишь закрытием тэга.

Спустя 5 минут, 19 секунд (27.10.2010 - 13:35) VTD написал(а):
Цитата (sergeiss @ 27.10.2010 - 13:30)
VTD - это один вопрос решён smile.gif А я тебе про еще одну проблему говорил, которую не решишь закрытием тэга.

Как тогда выбрать с помощью 1 запроса целых 6 разных таблиц из БД???

Спустя 1 час, 22 минуты, 11 секунд (27.10.2010 - 14:57) SlavaFr написал(а):
Цитата (sergeiss @ 27.10.2010 - 09:55)
PS. И еще... Почему ты для name используешь двойные кавычки, а для value - одинарные?

вопрос другой, зачем вообще name в option нужно?

OT:
"SELECT id, 'clan' as ot FROM $table1
union
SELECT id, 'dt' as ot FROM
$table2
union
SELECT id, 'mn' as ot FROM
$table3";

........

$sel=false;
$ot='';
while ($cl = mysql_fetch_array($res)){
if($cl['ot']!=$ot){

if($sel){echo '</select>';}
$sel=true;

echo '<select name="'.$cl['ot'].'" style="width:75px">';
$ot=$cl['ot'];
}
echo '<option value='" . $cl['id'] . '">"'.$cl['id'].' '.$cl['ot'].'</option>';

}
echo '</select>';


Спустя 42 минуты, 20 секунд (27.10.2010 - 15:40) inpost написал(а):
DOM в JS ссылается на name.

Спустя 1 час, 14 минут, 32 секунды (27.10.2010 - 16:54) VTD написал(а):
Цитата (SlavaFr @ 27.10.2010 - 14:57)
Цитата (sergeiss @ 27.10.2010 - 09:55)
PS. И еще... Почему ты для name используешь двойные кавычки, а для value - одинарные?

вопрос другой, зачем вообще name в option нужно?

OT:
"SELECT id, 'clan' as ot FROM $table1
union
SELECT id, 'dt' as ot FROM
$table2
union
SELECT id, 'mn' as ot FROM
$table3";

........

$sel=false;
$ot='';
while ($cl = mysql_fetch_array($res)){
if($cl['ot']!=$ot){

if($sel){echo '</select>';}
$sel=true;

echo '<select name="'.$cl['ot'].'" style="width:75px">';
$ot=$cl['ot'];
}
echo '<option value='" . $cl['id'] . '">"'.$cl['id'].' '.$cl['ot'].'</option>';

}
echo '</select>';


Как вы тогда собираете отправлять данные по POST, а потом определенные данные вносить в определенный столбец БД??? Вот для этого и нужно name.

Спустя 6 минут, 22 секунды (27.10.2010 - 17:01) SlavaFr написал(а):
нет у option такого аттрибута http://www.w3schools.com/tags/tag_option.asp
а даже если и был бы, то нет не какова приемущества опрашивать option с обсалютно одинаковым именем если они все ровно уже в select.options стоят.

Спустя 1 минута, 22 секунды (27.10.2010 - 17:02) SlavaFr написал(а):
Цитата (VTD @ 27.10.2010 - 13:54)
Как вы тогда собираете отправлять данные по POST, а потом определенные данные вносить в определенный столбец БД??? Вот для этого и нужно name.

по посту и гету передается name от селската а не от опций!!!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.