Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Динамический список
 
 автор: Eser   (09.04.2007 в 13:21)   письмо автору
 
 

Необходимо сделать выпадающий список с данными из БД
Пока тренируюсь написал два кода: Код1 без изпользованя БД, исправно работает, а Код2 (использует БД в ней хранятся цифры 1-3), выводит только цифру 1 ,хотя список делает размером в три элемента.
Код1:

<?php
echo ("<select name=spisok maxlength=150 size=1 >
"
);
$number=array(1,2,3);
for(
$i=0;$i<count($number);$i++)
{
$spisok=("<option selected> $number[$i]</option>");
echo 
$spisok;
}
?>

Код2:

<?php
require_once("script/config_mysql_connect.php");
$sql=mysql_query("select spisok from spisok");
$kolstr=mysql_num_rows($sql);
echo (
"<select name=spisok maxlength=150 size=1 >
"
);
$var=mysql_fetch_array($sql);
for (
$i=0;$i<$kolstr;$i++)
{
$spisok=("<option selected>$var[$i]</option>");
echo 
$spisok;
}
echo (
"</select>");
?>

   
 
 автор: cheops   (09.04.2007 в 13:33)   письмо автору
 
   для: Eser   (09.04.2007 в 13:21)
 

Что вызывает затруднение?

   
 
 автор: Eser   (09.04.2007 в 13:37)   письмо автору
 
   для: cheops   (09.04.2007 в 13:33)
 

Я не понимаю почему 2-ой код выводит только цифру 1 , в таблице три значения 1-3

   
 
 автор: Shokan   (09.04.2007 в 13:38)   письмо автору
 
   для: Eser   (09.04.2007 в 13:21)
 

попробуй так:


<?php 
require_once("script/config_mysql_connect.php"); 
$sql=mysql_query("select spisok from spisok"); 
echo (
"<select name=spisok maxlength=150 size=1 > 
"
); 
while(
$var=mysql_fetch_array($sql)){ 
  
$spisok=("<option selected>$var['1']</option>"); 
  echo 
$spisok

echo (
"</select>"); 
?>

   
 
 автор: Eser   (09.04.2007 в 13:59)   письмо автору
 
   для: Shokan   (09.04.2007 в 13:38)
 

Нет вообще пустой список появляется

   
 
 автор: Shokan   (09.04.2007 в 14:01)   письмо автору
 
   для: Eser   (09.04.2007 в 13:59)
 

только в место
1 здесь

$spisok=("<option selected>$var['1']</option>");

поставь
0

   
 
 автор: Eser   (09.04.2007 в 14:11)   письмо автору
 
   для: Shokan   (09.04.2007 в 14:01)
 

Да заработало спасибо! А так на будущее все же немогли бы подсказать в чем ошибка с оператором FOR?

   
 
 автор: Shokan   (09.04.2007 в 14:39)   письмо автору
 
   для: Eser   (09.04.2007 в 13:21)
 

во 1-ых после

$sql=mysql_query("select spisok from spisok");

го по моему не логично писать сразу

$var=mysql_fetch_array($sql);

во 2-ых
я сам не проверял эти коды в своем хосте но по моему
еще здесь должен быть
=<
for ($i=0;$i<$kolstr;$i++)
в место <
3-глобальная ошибка

$spisok=("<option selected>$var[$i]</option>");

$var[$i]
присваевается значения поля а не ...
от того он у тебя считает только 1 значение

   
 
 автор: Eser   (09.04.2007 в 16:11)   письмо автору
 
   для: Shokan   (09.04.2007 в 14:39)
 

Спасибо!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования