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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как передать информацию?

Сообщения:  [1-10]    [11-20]   [21-30]  [31-31] 

 
 автор: Andron   (15.07.2004 в 22:44)   письмо автору
 
   для: cheops   (15.07.2004 в 22:32)
 

ВОТ! ОНО! :))))))))
Пашет!!!!
Спасибо! Mille grazie! Danke!
AAAAAAAAAAA!
:-)))))

   
 
 автор: cheops   (15.07.2004 в 22:32)   письмо автору
 
   для: Andron   (15.07.2004 в 21:35)
 

Вот правильный вариант, массивы JavaScript - это настоящие массивы здесь за 0 должна следовать 1 и т.д. Поэтому введём ещё одну временную переменную $counter:

<form name=form action=second.php method=post> 
<?php
  
//////////////////////////////////////////////////
  // Здесь соединение с базой данных
  //////////////////////////////////////////////////

  // Это уже сделано, но для полноты картины приведём
  
$query "SELECT * FROM list";
  
$lst mysql_query($query);
  if(!
$lst)
  {
    echo 
"Ошибка при выполенении выборки из таблицы LIST";
    exit();
  }
  
// Если в таблице есть хоть одна запись - формируем список
  
if(mysql_num_rows($lst)>0)
  {
    echo 
"<select multiple size=".mysql_num_rows($lst)."
          name=id_theme onClick=\"javascript:click_first()\">"
;
    while(
$list mysql_fetch_array($lst))
    {
      
// Формируем элементы списка
      
echo "<option value=".$list['id_theme'].">".$list['name'];
    }
  }
?>
</select> 
<select name=second_list multiple size="3" name=id_category showempty> 
</select> 
<br><input type=submit value="Выбрать категорию"> 
</form> 
<script language='JavaScript1.1' type='text/javascript'>
<!--
  function click_first()
  {
    <?php
      
// Формируем тело скрипта JavaScript средствами PHP
      
$query "SELECT * FROM list";
      
$lst mysql_query($query);
      if(!
$lst)
      {
        echo 
"Ошибка при выполенении выборки из таблицы LIST";
        exit();
      }
      
// Если в таблице есть хоть одна запись - формируем список
      
if(mysql_num_rows($lst)>0)
      {
        
$counter 0;
        while(
$list mysql_fetch_array($lst))
        {
          
// Тут нужно быть внимательным: массивы в JavaScript начинаются
          // с 0, а в таблице нумерация первичного ключа может начинаться
          // с 1 - в этом случае от значения $list['id_theme'] нужно вычесть 1
          
echo "if(this.form.id_theme.options[".($counter++)."].selected){\n";
          
//echo "if(this.form.id_theme.options[".$list['id_theme']."].selected){\n";
          // Формируем и выполняем SQL-зарос на выборку из таблицы SUBLIST
          
$query "SELECT * FROM sublist WHERE id_theme=".$list['id_theme'];
          
$sbl mysql_query($query);
          if(!
$sbl)
          {
            echo 
"Ошибка при выполенении выборки из таблицы SUBLIST";
            exit();
          }
          
//
          
if(mysql_num_rows($sbl)>0)
          {
            
$tmpnum 0;
            echo 
"this.form.second_list.length = 0;\n";
            while(
$sublist mysql_fetch_array($sbl))
            {
              echo 
"this.form.second_list.options[$tmpnum] = new Option(\"".$sublist['name']."\",\"".$sublist['id_subtheme']."\");\n";
              
$tmpnum++;
            }
          }
          echo 
"}";
        }
      }
    
?>
  }
//-->
</script>

   
 
 автор: Andron   (15.07.2004 в 22:31)   письмо автору
 
   для: cheops   (15.07.2004 в 22:12)
 

УПС -прикольная штука. У меня где-то 4 года. А то пару раз вырубили свет, и вся робота пошла к... Ок.

Я вот что хотел спросить (:-))-как с функцией? Где может быть ошибка? Грррррр. Забить на неё?

   
 
 автор: cheops   (15.07.2004 в 22:12)   письмо автору
 
   для: Andron   (15.07.2004 в 22:02)
 

>8-(
Вот и я так же сидел :) - уже темно, даже не почитаешь, завтра же UPS куплю...

   
 
 автор: Andron   (15.07.2004 в 22:02)   письмо автору
 
   для: Кузнецов М.В.   (15.07.2004 в 21:51)
 

>Cheops'у отключили свет, так что ждите :)
8-(

> А по типам БД я постараюсь Вам ответить в
>отдельном топике, чтобы не нарушать вашу беседу :)

Ок. Спасибо.

   
 
 автор: Кузнецов М.В.   (15.07.2004 в 21:51)   письмо автору
 
   для: Andron   (15.07.2004 в 21:37)
 

Возможно, так и сделаем.

   
 
 автор: Кузнецов М.В.   (15.07.2004 в 21:51)   письмо автору
 
   для: Andron   (15.07.2004 в 21:35)
 

Cheops'у отключили свет, так что ждите :) (У нас очень сильные грозы). А по типам БД я постараюсь Вам ответить в отдельном топике, чтобы не нарушать вашу беседу :)

   
 
 автор: Andron   (15.07.2004 в 21:37)   письмо автору
 
   для: cheops   (15.07.2004 в 21:33)
 

Да, я бы вас попросил вставит в учебник выше написанное. Очень пригодится для начинающих!

   
 
 автор: Andron   (15.07.2004 в 21:35)   письмо автору
 
   для: cheops   (15.07.2004 в 21:33)
 

:-)
Вот еще 1 вопросик созрел: что-то не нашел инфо о типах бд (в примерах вы/мы писали type=MyIsam) а какие они есть и для чего их писать?
Или может я пропустил где-то?

PS. А интересная штука mysqldump!

   
 
 автор: cheops   (15.07.2004 в 21:33)   письмо автору
 
   для: Andron   (15.07.2004 в 20:48)
 

Это не сложно, нужно найти в дистрибутиве утилиту mysqldump, и выполнить в командной строке:
mysqldump basa>basa.sql 

где basa - имя базы данных, а basa.sql - имя файла куда запишется дамп базы данных, потом если что-то случится c базой данных или нужно будет переместить её на другой сервер, можно будет выполнить команду:
mysql basa<basa.sql

Последнее я и собираюсь сделать с файлом, который вы пришлёте :)

PS Кстати, почему вы себя ламером называете? Ламер, в первоначальном понимании этого слова, человек который ничего не знает и не понимает, но считает, что знает очень много, даёт всем советы и убедить его в его неправоте не представляется возможным. А вы очень восприимчивы к советам :)

   

Сообщения:  [1-10]    [11-20]   [21-30]  [31-31] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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