HTML-форма для поиска текста (php?) - PullRequest
1 голос
/ 05 мая 2011

У меня есть файл с именами пользователей и IP-адресами (около 10 МБ).Я хочу, чтобы люди приходили на мой веб-сайт и вводили IP-адрес или имя пользователя, чтобы он выполнял поиск в базе данных и возвращал совпадения.

Случай 1: пользователь вводит "Billy" в <form>.Выход - это IP-адрес, и все пользователи, которые использовали этот IP-адрес. Случай 2: Пользователь вводит IP-адрес в <form>.Выходные данные - это все имена пользователей, которые использовали этот ip-адрес.

К сожалению, я настоящий нуб, я просмотрел w3schools, но на самом деле не нашел того, что хотел или даже как мне это сделать.

Возможно, у меня будет HTML <form>, где пользователь вводит либо IP-адрес или имя пользователя, и переключатели, где пользователь указывает, был ли введенный им IP-адрес или имя.После этого я нахожусь в тупике, в <form> я должен иметь action="blah.php" или я могу создать локальную переменную, чтобы принять это значение?

РЕДАКТИРОВАТЬ: я хотел бы сделать все это в одном HTMLфайл, введя прямо в HTML.Вероятно, используя $desc=$_POST['ipaddress']; или подобное?Какое действие = "" я должен использовать в тегах формы?

Ответы [ 2 ]

2 голосов
/ 05 мая 2011

Я бы просто сделал одно поле поиска:

<form action="search.php">
<input name="q">

Затем в скрипте search.php просто получите строку:

$q = $_REQUEST["q"];

И пробежаться по текстовому файлу:

$f = fopen("10MB.txt", "r");
while (($line = fgets($f)) !== FALSE) {
   if (strstr($line, $q)) {
       print "<li>found: $line"; 
   }   // outputs name+ip if either one is found in the line
}

Предполагается, что текстовый файл содержит один IP-адрес и имя пользователя на строку. Вы можете точно настроить вывод, конечно. Разделите это, если хотите. Но поиск сам по себе не имеет значения, если форма отправляет IP-адрес или имя пользователя для поиска. Это будет соответствовать либо в текстовом файле.

0 голосов
/ 05 мая 2011

Как вы храните имена пользователей и IP-адреса?если вы используете базу данных sql, такую ​​как mysql, то вы можете использовать ее функции поиска или более специализированный инструмент поиска, такой как lucene или sphinx.

Вот несколько ссылок, которым вы можете следовать.

http://www.w3schools.com/PHP/php_mysql_select.asp

http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

http://lucene.apache.org/java/docs/index.html

http://sphinxsearch.com/docs/current.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...