|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » замена значения элемента массива другим значением элемента.. |
|
замена значения элемента массива другим значением элемента..
|
Новый участник Сообщения: 9 |
Всем привет!
Ситуация: Есть форма (низподающая меню), из которой выбирается интересующая позиция, данные по позициям берутся php-скриптом из текстового файла. В данном случае низподающая меню - выбор марок автомобилей. Выбрав интересующую марку пользователь кликает на Ok, далее данные передаются скрипту, который обрабатывает их и выводит ему, из другой тектовой базы, все авто соответсвующей данной марки. Текстовые базы данных. (1-ая база, marks.txt, для низподающей меню), вид: ... 22;Mini; 23;Cadillac; 24;Lincoln; ... (2-ая база, cars.txt), вид: ... 29;2;Murano 28;3;Endeavor; 27;23;Escalade 26;23;SRX ... При выводе пользователю инфы по интересующей марке 1-ый индекс (2-ой базы) не заменяется на 0-ой индекс (1-ой базы). К примеру, переменная, которая передаются из формы скрипту $mark, значение этой переменной 23, т.е. пользователю в браузере отображется так: , а должно быть: "Код в студию": $fp=fopen("data/marks.txt","r"); $marks=array(); $i=0; while(!feof($fp)) {$marks[$i]=fgets($fp,10000); $i++;} fclose($fp); $fp=fopen("data/cars.txt","r"); $cars=array(); $i=0; while(!feof($fp)) {$str=" "; $cars[$i]=fgets($fp,10000); $pt=explode(";",$cars[$i]); for($j=0;$j<count($marks);$j++) {$mpt=explode(";",$marks[$j]); *if($pt[1]==$mpt[0]) *{$pt[1]=$mpt[1]; * break;}} // $cars[$i]=implode(";",$pt); $str=$str.";"; $cars[$i]=$str.$cars[$i]; $i++;} fclose($fp); sort($cars); $ncars=count($cars); $ndcars=array(); $counter=0; for($i=0;$i<$ncars;$i++) {$pt=explode(";",$cars[$i]); if($pt[2]==$mark) {$ndcars[$counter]=$cars[$i]; *$counter++;}} $ncars=count($ndcars); print "Всего авто - $ncars<br>"; for($i=0;$i<$ncars;$i++) {$pt=explode(";",$ndcars[$i]); $id=$pt[1]; $mark=$pt[2]; $art=$pt[3]; print "$mark $art<br>";} Вопрос: В чём может быть причина? Что я делаю не так? Как это делается? Заранее спасибо! |
|
Отправлено: 17:45, 19-05-2004 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Мне нравится ваш стиль описания проблемы - мои респекты!
Теперь ближе к делу. 1) Мне также кажется странным способ организации данных - зачем во второй таблице первый (нулевой в сложившейся терминологии) индекс? Это id авто? Тогда лады, если нет - зачем он? Хотя он возможно не используется... 2) Зачем такой громоздкий скрипт? Представьте себе процесс передачи данных от посетителя к скрипту и вам станет ясно, что легче написать функцию которая по выбранной марке (ее номеру) сообщит все, что вам покажется необходимым сообщить (ведь во втором файле можно разместить не только названия авто, но и их другие характеристики). Например из описанной вами задачи получается нечто такое (разумеется без проверки данных и всего такого прочего): function GetAvtos($Mark) { $Out = ''; $Cars = file('data/cars.txt'); foreach ($Cars as $Car) { $CarInfo = explode (';', $Car); if ($CarInfo[1] == $Mark) $Out .= $CarInfo[1].' '.$CarInfo[2].'<br>'; } return $Out; } А можно изменить саму функцию, если оно необходимо... Кстати, в php есть такая функция как Цитата php manual:
|
|
------- Отправлено: 06:50, 20-05-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Как получить индекс текущего элемента GUICtrlCreateListView | malev | AutoIt | 5 | 20-10-2009 10:35 | |
[решено] Сохранение содержимого элемента EDIT в текстовый файл | snoitaleR | AutoIt | 3 | 25-07-2009 14:34 | |
Выбор элемента из перечня на веб странице(елемент select) | aesir | AutoIt | 2 | 30-04-2009 19:56 | |
Разное - Составление процедуры для определения минимального элемента матрицы | Boney | Программирование и базы данных | 1 | 27-05-2008 22:39 | |
Выделение элемента в ListBox | ramo | Программирование и базы данных | 3 | 07-02-2007 20:56 |
|