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

Форум PHP

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

 

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

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

тема: Список по индексам

Сообщения:  [1-10]   [11-13] 

 
 автор: cheops   (09.04.2006 в 15:04)   письмо автору
 
   для: Anwor   (09.04.2006 в 14:19)
 

Действительно странно...

   
 
 автор: Anwor   (09.04.2006 в 14:19)   письмо автору
 
   для: cheops   (09.04.2006 в 14:13)
 

Нет, print_r тоже пробовал, все правильно выводит! Парадокс...

   
 
 автор: cheops   (09.04.2006 в 14:13)   письмо автору
 
   для: Anwor   (09.04.2006 в 01:19)
 

А если распечатать массив $categories
<?php
  
echo "<pre>";
  
print_r($categories);
  echo 
"</pre>";
?>

не могли в нём ключи и значения местами поменяться?

   
 
 автор: Anwor   (09.04.2006 в 01:19)   письмо автору
 
   для: cheops   (09.04.2006 в 00:30)
 

Там дело обстоит так.. Сначала скрипт этот список заполняет.

<select name='category' id='category'>
<?php
$first
=1;
foreach (
$categories as $key => $value) {
  if (
$first) {
    
$key.=" selected";
  }
  echo(
"<option value=$key>$value</option>");
  
$first=0;
}
echo (
"</select>");
?>


Список из заранее заготовленного массива он мне выстраивает.
Затем, при проверке, мы делаем следующее:

<?php
//здесь идет много-много проверок, в соответствии с которыми формируется запрос $query, а далее:
foreach ($categories as $base => $list) {
  if (
$_POST['category']==$base) {
    
$i=1;
    foreach (
$keyword as $word) {
      
$query.="$base LIKE '%".$word."%' ";
      if (
count($keyword)>$i) {
        
$query.="OR ";
      }
      
$i++;
    }
    break;
}
?>


Здесь всё работает, как часы, запрос правильно формируется и посылается другой функции. Это значит, что скрипт сверяет параметр value выбранного <option> с ключом $key ассоциативного массива $categories и находит их идентичными. Но почему при проверке:

<?php
echo $_POST['category'];
?>

он выдает ИМЕННО кириллическое значение, выбранное из списка, т.е. слово, стоящее между тегами <option></option>?!!!

   
 
 автор: cheops   (09.04.2006 в 00:30)   письмо автору
 
   для: Anwor   (08.04.2006 в 18:37)
 

А как сейчас выглядит тэг <select> полностью?

   
 
 автор: Anwor   (08.04.2006 в 18:37)   письмо автору
 
   для: cheops   (08.04.2006 в 13:47)
 

А почему при команде

<?php
echo "$_POST['categories']";
?>

где указанная переменная - выбранный компонент списка, почему выводится именно кириллическое значение, а не параметр value? Не догоняю..

   
 
 автор: cheops   (08.04.2006 в 13:47)   письмо автору
 
   для: Anwor   (07.04.2006 в 23:57)
 

Да.

   
 
 автор: Anwor   (07.04.2006 в 23:57)   письмо автору
 
   для: Anwor   (07.04.2006 в 23:50)
 

А, минутку, это именно по value он и производит сравнение?!!! Тогда ясно, почему не уравнивается незаданный value с русскоязычной строкой! Я допедриваю в верном направлении?

   
 
 автор: Anwor   (07.04.2006 в 23:50)   письмо автору
 
   для: cheops   (07.04.2006 в 23:34)
 

Хорошо, а как же потом сделать проверку по этому value? Могу предположить, как это реализуется посредством Явки или Visual Basic, где всё происходит по схеме объект.свойство=значение, но в PHP... из какой переменной потом это будет выдергиваться?

   
 
 автор: cheops   (07.04.2006 в 23:34)   письмо автору
 
   для: Anwor   (07.04.2006 в 20:26)
 

Конечно, обычно для этих целей в базу данных вводят первичный уникальный ключ, в качестве имени подставляют название, а в качестве значение первичный ключ
<option value=$tablep[id]>$table[name]</option>

   

Сообщения:  [1-10]   [11-13] 

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

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