Я не знаю как это сделать, я в пхп новичок... просто есть ссылки HTML: http://emeraldscity.combats.com/inf.pl?login=WHITE_DRAGON&short=1 в которых лежит необходимая мне информация, она построчно со своим индексом, но я не знаю как вырезать её от туда + ссылок много они лишь отлечаются там где ник WHITE_DRAGON могут быть и другие + ещё проблемма с пробелом есть ник A Dennis PHP: '.urlencode('A+Dennis').' но оно меняет на A%2BDennis, а должно быть A%20Dennis при '.urlencode('A!Dennis').' будет A%21Dennis при '.urlencode('A%Dennis').' будет A%25Dennis а как добиться A%20Dennis??? А если вставлять просто A%20Dennis в ссылку HTML: http://emeraldscity.combats.com/inf.pl?login=A%20Dennis&short=1 то не происходит действие??? + Ещё вопрос!!! Как вырезать информацию по ссылке? Информация содержится в текстовом файле Вида: id=1151449698 , она находиться построчно, но в какоц строке и между какими не известно (вернее просто их порядок часто меняется) так вот мне необходима информация после =, а именно цифры в данном примере, а так там много разных значений и мне надо вырезать после =...??? Кто знает что здесь не правильно??? может нужно так: PHP: <? echo "" .(substr((strpos($fcontents,"login=")), 6, 32)); ?> или так: PHP: <? $rest = substr((strpos($fcontents,"login=")), 6, 32); echo $rest; ?> или так: PHP: <? echo "" .((is_int(strpos($fcontents,"login=")))? substr($fcontents,6, 32):""); ?> или ещё как-то... я не знаю... Помогите???
Или так: urlencode('A Dennis') тогда будет A%20Dennis если я не ошибаюсь, но зачем такой бред делать? Делай нормальные ссылки и всё и у тебя http://emeraldscity.combats.com/inf.pl?login=WHITE_DRAGON&short=1 WHITE_DRAGON без значения сидит
Jensi а когда надо вытянуть информацию по ссылке http://emeraldscity.combats.com/inf.pl?login=A%20Dennis&short=1 что тогда??? ведь тогда не работает...
Я что-то не очень хорошо понял вашу задачу, но в голову приходят функции типа parse_url и parse_str. Я так понял, что вам нужно взять из ссылки переменные login и short? Если так, то разберите url с помощью функции parse_url и затем из полученного массива разбирайте элемент $url['query'] функцией parse_str. Но кажется это не то, что вам нужно. Если все же то: http://ru.php.net/parse_url http://ru.php.net/parse_str
WHITE_DRAGON да не оставляй пробелы в URL, они там нафиг не нужны и сделай нормальные URL с нормальными переменными,а не никами и т.д. ( ну не прикол запоминать такие URL) Теперь по теме: Как вытянуть? Можно в студию скриптик или более подробное объяснение? А ваще,alexy, правильно написал по идее,я уж и забыл про парсеры
PHP: <?php $url = 'http://www.mysite.com?login=Dennis&short=2'; $arr = parse_url($url); $str = parse_str($arr['query']); echo $login.'::'.$short; ?> Что-то вроде этого...
PHP: $url = 'http://www.mysite.com?login=Dennis&short=2'; Так: PHP: $url = 'http://emeraldscity.combats.com/inf.pl?login=A%20Dennis&short=1';
alexy Спсб!!! Но это не много не то мне надо вытягивать информации не из ссылке, а то что будет при её открытии: Пройдя по ссылке: http://emeraldscity.combats.com/inf.pl?login=A%20Dennis&short=1 Мы увидем: login=A Dennis id=1151449698 zodiac=1 img=20 gamecity=Angels city gamecity_url=http://angelscity.combats.com level=9 vicrory=7167 defeat=1992 klan=HARMONY bossklan=1 и т.д. мне надо вытягивать всё что после =
Да ё моё,через массив можно вытащить - это я не могу помочь,не хочу париться с этой фигнёй) UPD: вот пример выдирания части из URL: PHP: function Url_Host($text, $host, $redirect) { preg_match_all('|http.*:\/\/(.*) |Ui', $text, $match); for ($i = 0; $i < count($match[0]); $i++) { $url = parse_url($match[0][$i]); if ($url['host'] != $host) { $page = str_replace($match[0][$i],$redirect.$match[0][$i],$text); } } return($page); } Там всё сам переделывай
test1.php HTML: <form name=myform method=GET action=test2.php> <input type=text name=login> <input type=submit> </form> test2.php PHP: <? echo $_GET["login"]; ?> вот и всё решение проблемы
%) Парсит URL и с массивами потом корячится,т.е. именно этот скрипт получает URL сайта ( SERVER_NAME),а тебе нужно изменить его и поставить на получение логина или чего там vital,кульное решение проблемы))) WHITE_DRAGON Забудь про эти URL,иначе ты бы уже весь сайт сделал заново,чем будешь париться с URL до конца жизни
Мне не надо парсить URL, мне надо парсить страницу которая содержит текст в строках... Я научился при помощи кода следующее: PHP: <?php if (INC !== 1) die(); $title = "Test"; include("modules/test/config.php"); include("modules/test/login.php"); $text = ""; $file = file('http://emeraldscity.combats.com/inf.pl?'.urlencode('WHITE_DRAGON').'&short=1'); $text.= "<center><b>Вариант 1</b></center>"; for($i=0;$i<count($file);$i++) { if (ereg("<>", $file[$i])){$text.=$do_cat.$file[$i].$posle_cat;} else { $me = explode("<>", $file[$i]); $text.=$do_text."<img border=0 src=/templates/default/images/arrow.gif /><font color=red><b>".$me[0]."</b></font><br />".$posle_text; } } if (count($file) == 0){ $text = $local[150];} $text.="<br /><hr />"; $text.= "<center><b>Вариант 2</b></center>"; for($i=0;$i<count($file);$i++) { if (ereg("<>", $file[$i])){$text.=$do_cat.$file[$i].$posle_cat;} else { $me = explode("=", $file[$i]); $text.=$do_text."<img border=0 src=/templates/default/images/arrow.gif /><font color=green><b>".$me[0]."</b></font><br />".$posle_text; } } if (count($file) == 0){ $text = $local[150];} $text.="<br /><hr />"; $text.= "<center><b>Вариант 3</b></center>"; for($i=0;$i<count($file);$i++) { if (ereg("<>", $file[$i])){$text.=$do_cat.$file[$i].$posle_cat;} else { $me = explode("=", $file[$i]); $text.=$do_text."<img border=0 src=/templates/default/images/arrow.gif /><b>".$me[1]."</b><br />".$posle_text; } } if (count($file) == 0){ $text = $local[150];} $text.="<br /><hr />"; $text.="<center><b>Вариант 4</b></center>"; $text.="<a href=".$encicl."klan/".$klan.".html target=_blank><img border=0 src=".$imgcombats."klan/".$klan.".gif /></a><b>".$login."</b> [".$level."]<a href=".$gamecity."inf.pl?".$id." target=_blank><img border=0 src=".$imgcombats."inf.gif /></a><strong>".$gamecity."</strong><strong>".$room_name."</strong>"; ?> http://www.clan-harmony.com/test/ Вариант 1 показывает всю информацию кот находиться на удалённом сервере Вариант 2 научился выдерать не нужную мне инф Вариант 3 необходимая мне инф, но не вся... а как эту инф выдерать только определённую и записывать в определённое мною место...??? Вариант 4 в определённом месте должна стоять определённая информация, но я не знаю как её выдрать и вставить туда...
Практически да, но как это реализовать!!! Какие ещё у кого есть мнения??? Подскажите!!! Ну очень необходимо!!!