Перейти к содержимому

Сервис обмена электронных валют

Выбрать шаблон и создать сайт

Как можно реализовать такое?

#1 Lion

Lion
  • Пользователь
  • 39 сообщений
  • Репутация: 0
0

Отправлено 13 Август 2011 - 18:43

На хостинге лежит .txt файл, в нем есть строки такого вида 122435 nazvanie_faila или 543434 vtoroe_nazvanie

Нужно, что-бы в форме поиска на сайте при вводе 6 цифр (122435) выдавало nazvanie_faila. При вводе 543434 выдавало vtoroe_nazvanie

Надеюсь выразился понятно.

 

 

  • 0

#2 ATS

ATS
  • Пользователь
  • 11 сообщений
  • Репутация: 0

Отправлено 14 Август 2011 - 10:13

При помощи php это можно просто реализовать.
  • 0

#3 xweb

xweb
  • Пользователь
  • 28 сообщений
  • Репутация: 0

Отправлено 14 Август 2011 - 10:15

нужно сам поиск сделать, то есть при нажатии выдавало название файла, или же подсказки при наборе текста в поле, как в яндексе или гугл?
  • 0

#4 ATS

ATS
  • Пользователь
  • 11 сообщений
  • Репутация: 0

Отправлено 14 Август 2011 - 10:19

Ой, немного не понял, если такая задача, то можно на javasсript написать.
  • 0

#5 matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 14 Август 2011 - 11:16

Например, так...
Текстовый файл file.txt лежит в одной директории со скриптом (иначе - просто меняем путь к файлу в скрипте):
122435 nazvanie_faila
543434 vtoroe_nazvanie
Теперь сам скрипт index.php:
<?php

if($_POST['submit']){
$file = './file.txt'; // путь к файлу
$handle = file($file); // читаем содержимое файла в массив

$num = (int)trim($_POST['num']); // получаем данные из формы
$flag = FALSE; // флаг результата поиска

/* проходимся по массиву */
foreach($handle as $item){
$search = explode(" ", $item); // разбиваем строку по разделителю - пробел
if($num == $search[0]){
// если совпадение числа есть
$result = $search[1]; // записываем в переменную строку рядом с числом
$flag = TRUE; // устанавливаем флаг результата в "найдено"
}
}

if($flag){
// если найдено - выводим результат
echo $result;
}else{
// иначе
echo 'Ничего не найдено';
}
}

?>

<form method="post">
Введите цифры: <input type="text" name="num" />
<input type="submit" name="submit" value="Поиск" />
</form>

Все откомментировал - так что доработать под свои нужды будет не особо сложно.
  • 0


#6 ATS

ATS
  • Пользователь
  • 11 сообщений
  • Репутация: 0

Отправлено 14 Август 2011 - 23:41

Так это не будет работать так сказать в онлайн режиме!


  • 0

#7 matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 15 Август 2011 - 06:13

Ух ты - а я и не знал :P
Оказывается серверный язык PHP не работает как клиентский ))
Сори за небольшой "укол", но покажите мне, где ТС говорил о том, что он хочет реализовать все асинхронно. ТС спросил как - ему ответили... заметьте, ответили не типа того, что:

При помощи php это можно просто реализовать.
(Супер комментарий - прям полностью решающий задачу :) )

а было предоставлено вполне работающее решение, полностью отвечающее описанной задаче.
  • 0



Оформление форума – IPBSkins.ru