|
|
|
| Ну, вот сегодня взбрело мне создать маленькую БД md5 хешей
И возник вопрос по поиску в файле
Есть файл с хешами
EnemY::21e5c6166b20241d0ce8eb9fe12c7447
YmenE::929358044b94477418f65c511f748fd2
Как выполнить поиск на совпадение хеша, если в файле есть хэш заданный в поиске вывести первое значение #1::#2
Хотябы кратко, а я сам дальше разберусь | |
|
|
|
|
|
|
|
для: EnemY
(12.05.2006 в 17:13)
| | Для этого необходимо поместить содержимое файла в массив при помощи функции file() далее в цикле foreach() разбить каждую строку по символу :: при помощи функции explode(). хэш пропустить через trim() - так как наверняка в конце будет символ возрата каретки \r, далее проверить его с искомым значением - если совпадает вернуть имя пользователя. | |
|
|
|
|
|
|
|
для: cheops
(12.05.2006 в 17:37)
| | Не совсем понятно насчет trim(); на конце остается тока \n
В правильную сторону хоть капаю? (я лол)
\n придется вырезать?
<?php
$base = file("base.txt") or die("file not found");
foreach($base as $datapass)
{
$pah = explode("::",$datapass);
// ..
}
?>
|
Не по зубам взял =\ | |
|
|
|
|
|
|
|
для: EnemY
(12.05.2006 в 21:20)
| | Что то вроде
<?php
if(strpos(file_get_contents("base.txt"), $_POST['search'])) echo "1"; else echo "0";
|
Тока как вывестизначение #1 ?! жесть!! Mysql было-бы проще | |
|
|
|
|
|
|
|
для: EnemY
(12.05.2006 в 23:03)
| | А так вы номера не определите - при переборе циклом, в тело цикла можно добавить знчение увеличивающийся счётчик $i++ и выяснить номер строки или просто вместо
<?php
foreach($base as $datapass)
?>
|
записать
<?php
foreach($base as $key => $datapass)
?>
|
где $key - будет номер текущей строки. В последнем варианте вы сможете просто опеределить факт наличия хэша. | |
|
|
|