Задача стоит следующая:
В рабочий сайт надо добавить выподающее меню со списком производителей
и из него производить запросы для сортировки выводов страниц по производителю
Действия:
Создана таблица:
================================ =====
CREATE TABLE `firm` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(255) NOT NULL default '',
`pict` varchar(100) NOT NULL default '',
`ord` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM;
================================ =====
Создан PHP код с выподающем меню:
================================ ==
echo " <table width="173" align="center" border="0">n";
echo " <tr>n";
echo " <td class=gray align=right>Производитель :</td>n";
echo " <td class=gray><select name=name size=1>n";
$query = "SELECT name FROM firm ";
if($name = mysql_query($query))
{
while(list($id_firm)=mysql_fetch_array($name))
{
echo "<option value='index.php?lang=$lang&p=$p&id_type=$id_type&id_subtype=$id_subtype&id_firm=$id_firm'>" . $id_firm . "</option>";
}
} else puterror("error");
echo " </select></td>n";
echo " </table>";
================================ =============
Результат:
Выводиться выподающее меню со списком производителей - но не производится вывод страниц
отсортированных по производителю ( т.е. не работает линк )
Если в адресной строке дописать к имеющемуся линку:
index.php?lang=ru&p=4&id_type=1&id_subtype=213
(который выводит страницы не отсортированный по производителю)
&id_firm=27 ( где 27 это id )
то получим желаемый результат - выводятся страницы отсортированный по производителю
Вывод:
Выподающее меню сделано правильно, а вот линк в меню организован не правильно
Прошу:
Указать на ошибку
P.S. За ранее благодарен
1. VladisOK - 12 Июня, 2007 - 12:33:37 - перейти к сообщению
2. evgenijj - 12 Июня, 2007 - 12:52:43 - перейти к сообщению
Цитата:
Прошу: Указать на ошибку
Это не ошибка - это полное непонимание того, что делаешь. Почему браузер должен переходить по этому линку? Где это написано?
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
3. VladisOK - 12 Июня, 2007 - 13:08:48 - перейти к сообщению
evgenijj пишет:
Это не ошибка - это полное непонимание того, что делаешь. Почему браузер должен переходить по этому линку? Где это написано?
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
Цитата:
Прошу: Указать на ошибку
Это не ошибка - это полное непонимание того, что делаешь. Почему браузер должен переходить по этому линку? Где это написано?
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
Ты имеешь ввиду:
================================ =============
echo " <table width="173" align="center" border="0">n";
echo " <tr>n";
echo " <td class=gray align=right>Производитель :</td>n";
echo " <td class=gray><select name=name location.href=this.options[selectedIndex].value size=1>n";
$query = "SELECT name FROM firm ";
if($name = mysql_query($query))
{
while(list($id_firm)=mysql_fetch_array($name))
{
echo "<option value='index.php?lang=$lang&p=$p&id_type=$id_type&id_subtype=$id_subtype&id_firm=$id_firm'>" . $id_firm . "</option>";
}
} else puterror("error");
echo " </select></td>n";
echo " </table>";
================================ ====
Так тоже не работает
4. evgenijj - 12 Июня, 2007 - 13:14:05 - перейти к сообщению
VladisOK пишет:
Так тоже не работает
Так тоже не работает
У меня работает.
5. VladisOK - 12 Июня, 2007 - 13:16:39 - перейти к сообщению
evgenijj пишет:
У меня работает.
VladisOK пишет:
Так тоже не работает
Так тоже не работает
У меня работает.
Может у меня каких-то кавычек не хватает
6. evgenijj - 12 Июня, 2007 - 13:19:11 - перейти к сообщению
VladisOK пишет:
Может у меня каких-то кавычек не хватает
Может у меня каких-то кавычек не хватает
Очень даже может быть.
Третий раз сегодня даю эту ссылку: http://phpfaq[dot]ru/na_tanke
Цитата:
PHP формирует HTML код! И этот код ЗНАЧИТЕЛЬНО отличается от того изображения, которое вы видите на экране. Если у вас что-то не получается, то надо всегда смотреть именно ИСХОДНЫЙ код страницы, а не то, как вам ее рисует браузер. В браузере Internet Explorer исходный код можно посмотреть, выбрав в меню Вид - Просмотр HTML-кода.
Если у вас не работает яваскрипт, сформированный PHP скриптом, или html показывает не то, что вы хотите, то исправить эту проблему очень просто.
1. Сначала пишете нужный яваскрипт или html руками. Если у вас с этим проблемы - обратитесь в соотвествующий форум - по яваскрипту или html. PHP тут не при чём.
2. Сравниваете с тем, что получено из PHP
3. Вносите исправления в PHP скрипт, чтобы текст, отдаваемый им, не отличался от написанного руками.
PHP формирует HTML код! И этот код ЗНАЧИТЕЛЬНО отличается от того изображения, которое вы видите на экране. Если у вас что-то не получается, то надо всегда смотреть именно ИСХОДНЫЙ код страницы, а не то, как вам ее рисует браузер. В браузере Internet Explorer исходный код можно посмотреть, выбрав в меню Вид - Просмотр HTML-кода.
Если у вас не работает яваскрипт, сформированный PHP скриптом, или html показывает не то, что вы хотите, то исправить эту проблему очень просто.
1. Сначала пишете нужный яваскрипт или html руками. Если у вас с этим проблемы - обратитесь в соотвествующий форум - по яваскрипту или html. PHP тут не при чём.
2. Сравниваете с тем, что получено из PHP
3. Вносите исправления в PHP скрипт, чтобы текст, отдаваемый им, не отличался от написанного руками.
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
И посмотри, что у тебя
<select name=name location.href=this.options[selectedIndex].value size=1>
7. VladisOK - 12 Июня, 2007 - 13:26:48 - перейти к сообщению
evgenijj пишет:
Очень даже может быть.
Третий раз сегодня даю эту ссылку: http://phpfaq[dot]ru/na_tanke
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
И посмотри, что у тебя
<select name=name location.href=this.options[selectedIndex].value size=1>
VladisOK пишет:
Может у меня каких-то кавычек не хватает
Может у меня каких-то кавычек не хватает
Очень даже может быть.
Третий раз сегодня даю эту ссылку: http://phpfaq[dot]ru/na_tanke
Цитата:
PHP формирует HTML код! И этот код ЗНАЧИТЕЛЬНО отличается от того изображения, которое вы видите на экране. Если у вас что-то не получается, то надо всегда смотреть именно ИСХОДНЫЙ код страницы, а не то, как вам ее рисует браузер. В браузере Internet Explorer исходный код можно посмотреть, выбрав в меню Вид - Просмотр HTML-кода.
Если у вас не работает яваскрипт, сформированный PHP скриптом, или html показывает не то, что вы хотите, то исправить эту проблему очень просто.
1. Сначала пишете нужный яваскрипт или html руками. Если у вас с этим проблемы - обратитесь в соотвествующий форум - по яваскрипту или html. PHP тут не при чём.
2. Сравниваете с тем, что получено из PHP
3. Вносите исправления в PHP скрипт, чтобы текст, отдаваемый им, не отличался от написанного руками.
PHP формирует HTML код! И этот код ЗНАЧИТЕЛЬНО отличается от того изображения, которое вы видите на экране. Если у вас что-то не получается, то надо всегда смотреть именно ИСХОДНЫЙ код страницы, а не то, как вам ее рисует браузер. В браузере Internet Explorer исходный код можно посмотреть, выбрав в меню Вид - Просмотр HTML-кода.
Если у вас не работает яваскрипт, сформированный PHP скриптом, или html показывает не то, что вы хотите, то исправить эту проблему очень просто.
1. Сначала пишете нужный яваскрипт или html руками. Если у вас с этим проблемы - обратитесь в соотвествующий форум - по яваскрипту или html. PHP тут не при чём.
2. Сравниваете с тем, что получено из PHP
3. Вносите исправления в PHP скрипт, чтобы текст, отдаваемый им, не отличался от написанного руками.
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<option value="index.php?id=1">1</option>
<option value="index.php?id=2">2</option>
<option value="index.php?id=3">3</option>
</select>
И посмотри, что у тебя
<select name=name location.href=this.options[selectedIndex].value size=1>
Ты прав братишка пиво ( хоть и жарко ) надо меньше пить
Да работает, но не доконца - в адресной строке пишент так:
index.php?lang=ru&p=4&id_type=1&id_subtype=213&id_firm=Ariston
а надо:
index.php?lang=ru&p=4&id_type=1&id_subtype=213&id_firm=27
8. evgenijj - 12 Июня, 2007 - 13:29:38 - перейти к сообщению
Издеваешься?
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<select name="name" onChange="location.href=this.options[selectedIndex].value">
9. VladisOK - 12 Июня, 2007 - 13:41:36 - перейти к сообщению
evgenijj пишет:
Издеваешься?
<select name="name" onChange="location.href=this.options[selectedIndex].value">
<select name="name" onChange="location.href=this.options[selectedIndex].value">
Нее всё нормально - работает, но не до конца не переводит name в id
index.php?lang=ru&p=4&id_type=1&id_subtype=213&id_firm=Ariston
а надо index.php?lang=ru&p=4&id_type=1&id_subtype=213&id_firm=27
в таблице FIRM, поле NAME - Ariston а id - 27
10. evgenijj - 12 Июня, 2007 - 13:49:08 - перейти к сообщению
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- $query = "SELECT id, name FROM firm ";
- {
- {
- echo "<option value='index.php?id_firm=" . $firm["id"] . "'>" . $firm["name"] . "</option>";
- }
- }
- else puterror("error");