PDA

Просмотр полной версии : [Нужна помощь] Вывод из txt с выбранным критерием (php)


draliokero
30.03.2009, 21:44
Есть txt, в нем с каждой новой строки идут ссылки вида

http://www.google.ru;search
http://www.yandex.ru;lebedev
http://forum.antichat.ru/;porn
http://habrahabr.ru/;sukidajteinvajt
...


Нужно пропарсить этот файл на то, что идет после ; и составить из этого список вида select.

т.е. парсить urls.txt и вносит в раскрывающий список все значения после ;


search
lebedev
porn
sukidajteinvajt
...


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

Помогите с кодом, пожалуйста.

IcEnd
30.03.2009, 21:52
Тоже интересно только нуно разделить список mail;pass
Раньше разделял Powerful GeneratoR'ом, сейчас виснет и все.

rushter
30.03.2009, 21:55
<form name="slc" method="get">
<select name="select">
<?php
$c = file('file.txt');
foreach($c as $k)
{
$exp = explode(';',$k);
echo "<option>$exp[1]</option><br>";
}
?>
</select></form>

NigHT_0WL
30.03.2009, 22:01
Не пойму, а почему в пхп(если можно в чем хочешь, то я помогу. Паскаль или С++)

draliokero
30.03.2009, 22:06
NigHT_0WL, нужно не только пропарсить, но и сделать выборку через
<select>
<option>Пункт 1</option>
<option>Пункт 2</option>
</select>
и вывести урлы по выбранному пункту.
rushter, Спасибо, принцип понятен, а как найти в массиве, нужные мне элементы после ; которых стоит выбранный мною пункт?

art2222
30.03.2009, 22:37
нужные мне элементы после ; которых стоит выбранный мною пункт?
Если я правильно тебя понял

$arr = explode(';','http://www.google.ru;search');
//В $arr[0] будет http://www.google.ru а в $arr[1] - search

draliokero
30.03.2009, 22:51
art2222, да, про $arr[0], $arr[1].

<form method="get">
<select name="select">
<?php
$c = file('file.txt');
foreach($c as $k)
{
$exp = explode(';',$k);
echo "<option>$exp[1]</option><br>";
}
?>
</select>
<input type="submit" />
</form>

А как дальше крутиться с массивом и полученным $_GET["select"]; , чтобы вывести все
blabla;$_GET["select"];
blabla1;$_GET["select"];
blabla2;$_GET["select"];
непонятно…

rushter
30.03.2009, 23:37
art2222, да, про $arr[0], $arr[1].

<form method="get">
<select name="select">
<?php
$c = file('file.txt');
foreach($c as $k)
{
$exp = explode(';',$k);
echo "<option>$exp[1]</option><br>";
}
?>
</select>
<input type="submit" />
</form>

А как дальше крутиться с массивом и полученным $_GET["select"]; , чтобы вывести все
blabla;$_GET["select"];
blabla1;$_GET["select"];
blabla2;$_GET["select"];
непонятно…
что-то вроде этого...
for ($i = 0; $i <= count($c); $i++)
{
if(strstr($c[$i],$_GET['select'])) {echo $c[$i];}
}

draliokero
31.03.2009, 00:22
rushter, супер, спс :-)

_==wolf==_
31.03.2009, 21:36
http://forum.antichat.ru/;pornсоветую отредактировать пост пока патриоты не заметили хДД