Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: расширенный поиск php без участия mysql
Форумы портала PHP.SU » PHP » Программирование на PHP » расширенный поиск php без участия mysql

Страниц (1): [1]
 

1. nilbug - 28 Апреля, 2009 - 19:13:18 - перейти к сообщению
имеется некая база данных. все данные каждого клиента находится в отдельном файле в виде массива.
клиент 1: файл.php $массив данных (ФИО, телфон и т.д.);
клиент 2: файл2.php $массив данных2 (ФИО, телфон и т.д.);
................................ .

на каком принципе построить посоветуете поиск? допустим только фамилию искать, только имя и т.д... и как выводить результаты поиска?
2. DeepVarvar - 28 Апреля, 2009 - 19:57:22 - перейти к сообщению
призаписи в файл:
CODE (text):
скопировать код в буфер обмена
  1. $infoklienta = $info1."::".$info2."::".$info3."::".$info4."::";

содержимое файла будет примерно таким(тупо текст):
CODE (text):
скопировать код в буфер обмена
  1. пупкин::василий::михалыч::еврей::

Поиск:
предположим вы ищите всех "михалычей" (по $info3)..
открываем папку с файлами..
начало цикла
открываем файл
присваиваем его содержимое в переменную
разбиваем переменную через explode(), в нашем случае "::"
достаем оттуда $info3
сравниваем с введенной строкой, если TRUE, тогда вывод совпадающей инфы (для текущего файла)
конец цикла
закрываем папку
3. EuGen - 29 Апреля, 2009 - 10:45:53 - перейти к сообщению
Посоветую по-другому организовать хранение данных, чтобы не придумывать хитроумных алгоритмов такого поиска.
4. DeepVarvar - 29 Апреля, 2009 - 11:11:42 - перейти к сообщению
EuGen, я с вами согласен..

А я вот делал так:

мне надо было индентифицировать товар по степени вложенности в разделы..
фактически все товары-файлы лежали в одной папке.
Имя*.txt товара при его создании формировалось из "флагов" принадлежности к тому или иному разделу/подразделу + ф-ция time(), а внутри было только описание и <img src="......">...
имя могло быть таким: newregton1231231231.txt
это означало что товар принадлежит к: новинки(new)=>регулярная линия(reg)=>тонизирующие средства(ton)..
Так как степень вложенности была разной, в запасе был дефолтный "флаг" ='000'..
А в каталоге был обработчик всей этой петрушки...
5. Гость - 29 Апреля, 2009 - 19:46:05 - перейти к сообщению
nilbug На самом деле алгоритмов очент много и раньше даже иноглда приходилось создавать текстовые базы данных
Действительно самое оптимальное сделать замену спецсимволов и разделить потом по разделителям и работать как надо

 

Powered by ExBB FM 1.0 RC1