[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как искать по dbf файлу?
Konsole
Здравствуйте, у меня есть dbf файл в нем хранится информация, хочу сделать поиск, но как искать по dbf файлу? как я понял нужно сделать так

if($action == 'search')
{
$image = $_GET['id'];
$tovar = get_info($image, true);
$file_name = 'PitMosALL_.dbf';
$dbf = dbase_open($file_name, 2);

и дальше выбирать нужные данные, так?
и хотелось бы узнать у меня все на одной страничке index.php
и я почему-то когда захожу в категорию где и находится поиск у меня почему-то появляется главная страница + то условие которое прописано в запросе

<form action="/index.php?action=search" method="post"">
<input type="
text" name="search">
<input type="
submit" value="Поиск" name="buttom_search">
</form>



if($action == 'search')
{

echo 'проверка';
}

как сделать так чтобы не появлялась то что на главной страница, а то что нужно при нажатии на поиск



Спустя 2 часа, 29 минут, 24 секунды (7.09.2011 - 23:17) Игорь_Vasinsky написал(а):
DBF файл имеет свою внутреннюю структуру, и поэтому так просто ты его не прочтёшь, конвертируй в txt чтоли, потом ищи. , тока я такого конвертера не видел, не только в php, но и среди софта biggrin.gif

Можно вроде в CSV, а там чем чёрт не шутит...

Спустя 10 часов, 23 минуты, 10 секунд (8.09.2011 - 09:40) Konsole написал(а):
А если я знаю переменные эти? тут просто выводится из dbf файла
товар

$image = $_GET['id'];
$tovar = get_info($image, true);

$file_name = 'PitMosALL_.dbf';
$dbf = dbase_open($file_name, 2);

$records = @dbase_numrecords($dbf) or die("Error reading DBF's number of fields");

$colors = array();
$colors_r = array();

for($x = 1; $x <= $records; $x++)
{
$record = dbase_get_record_with_names($dbf, $x);
if($record['NAME_'] == $tovar['NAME_'])// && $record['ARTICLE_'] == $tovar['ARTICLE_'])
{
$colors_r[$record['ARTICLE_']] = $record;
}
}

то просто открыть эту базу и искать

$tovar['NAME_'].'
$tovar['
ARTICLE_']
$tovar['
PSIZE_']
$tovar['
SIZE_']

так ?)
просто запутался, как искать именно, зная что искать в этом файле и какие данные?

Спустя 2 минуты, 11 секунд (8.09.2011 - 09:42) Игорь_Vasinsky написал(а):
Ты данные из файла прочитать можешь?
если да - то в них и ищи циклом.

Спустя 11 минут, 31 секунда (8.09.2011 - 09:54) Konsole написал(а):
прочитать и вывести да, в принципе не сложно сделать, просто открыть ту базу искать по ключевому слову и если совпадет то и выводить, так? просто реализовать как мне с этой базой, если было в mysql то тут проще делал всегда через нее, спасибо за ответ, а не подскажете у меня на одной странице все написано на одной странице index.php, и когда нажимаешь на категорию то выводится на этой же только вид index.php?page=траля&name=траля&action=category

я сделал для поиска чтобы
if ($action=search) {
и условие
}

но у меня почему-то выводит на главную страницу, но в адресной строке написано index.php?action=search, я пробовал в условие вбить <body>и полность хмтл код но у меня просто сверху главная а снизу этот код</body>
а мне нужно чтобы была отдельная страница, не подскажете как это можно реализовать? извиняюсь за кривое разъяснения =)

Спустя 4 часа, 23 минуты, 40 секунд (8.09.2011 - 14:18) Konsole написал(а):
с выводом данных более менее разобрался, но вот чтобы искал по поиску не пойму

$db = dbase_open('PitMosALL_.dbf', 2);
if ($db) {
$record_numbers = dbase_numrecords($db);
for ($i = 1; $i <= $record_numbers; $i++) {
$row = dbase_get_record_with_names($db, $i);
$ff = "STAR15";
if ($row['NAME'] = $ff ) {
echo "Member #$i: " . trim($row['NAME_']) . "<br>";
}

}



}


тут подключился к базу, вывожу все данные по наименованию, но вот чтобы он искал, он почему-то не находит..

Спустя 20 часов, 27 минут, 23 секунды (9.09.2011 - 10:45) Konsole написал(а):
Не подскажете?

Спустя 5 часов, 21 минута, 35 секунд (9.09.2011 - 16:07) killer8080 написал(а):
Видимо придётся вручную перебирать ряды и искать вхождения через stripos().
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.