OK, I've tried it out. What is interesting is that the URL you have posted
results in the site's 'home' page, for me anyway, which obviously results in
no matches for the preg_match. It appears to redirect to
http://www.runescape.com/ somehow.

I am using the code:

<?php
$content =
file_get_contents("http://hiscore.runescape.com/aff/runescape/hiscorepersona
l.cgi?username=champinoman");
if
(preg_match('#username=champinoman&category=13.*align="right">(.*)</td>#mi',
$content,$out))
{
        echo $out;
}else{
        echo $content;  // <- results in home page
}
?>

Graham

-----Original Message-----
From: champinoman [mailto:[EMAIL PROTECTED]
Sent: 29 September 2004 02:04
To: [EMAIL PROTECTED]
Subject: Re: [PHP] Re: grabbing information from websites


i tried putting in fread() but still getting a blank screen. any other
errors in here?

<?php
$file = fopen
("http://hiscore.runescape.com/aff/runescape/hiscorepersonal.cgi?username=ch
ampinoman","r");
$line = fread ($file, 1024);
if
(preg_match('#username=champinoman&category=13.*align="right">(.*)</td>#mi',
$line,$out))
{
$rune = $out;
}
fclose($file);
print $rune;
?>



"Graham Cossey" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
>
> fgets() will read in from file until end of line or end of file up to the
> No
> bytes given.
>
> Is there an end of line between the "username=chapinoman" and the "<td
> align="right">70,277" ?
>
> If there is a line break then $line will never contain both strings.
>
> You may need to use fread() instead.
>
> HTH
>
> Graham
>
> -----Original Message-----
> From: champinoman [mailto:[EMAIL PROTECTED]
> Sent: 28 September 2004 14:47
> To: [EMAIL PROTECTED]
> Subject: Re: [PHP] Re: grabbing information from websites
>
>
> i said i was learning this and didnt really understand it.
> so going by what has been said i have come up with the following.... but
> still doesnt want to work.
> heres what i have:
>
> <?php
> $file = fopen
>
("http://hiscore.runescape.com/aff/runescape/hiscorepersonal.cgi?username=ch
> ampinoman","r");
> $line = fgets ($file, 1024);
> if
>
(preg_match('#username=champinoman&category=13.*align="right">(.*)</td>#mi',
> $line,$out))
> {
> $rune = $out;
> }
> fclose($file);
> print $rune;
> ?>
>
> and the source it is looking at is:
>
> <tr><td><img src="http://www.runescape.com/img/hiscores/crafting.gif";
> valign="bottom" width=16 height=16 /></td><td>&nbsp;</td>
> <td><a href="hiscoreuser.cgi?username=champinoman&category=13"
> class=c>Crafting</a></td>
> <td align="right">70,277</td><td align="right">
> 43
> </td><td align="right">
> 53,630
> </td></tr>
>
> I want it to get the 70,277 and store as $rune
> if someone can tell me where im wrong i would be extremely grateful
>
> thank you for your ongoing support.
>
>
>
> --------------------------------------------------------------------------
--
> ------------------
> "M. Sokolewicz" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]
>> ugh, obviously I'm a bad typer :) The code should be:
>>
>>
>
preg_match('#username=champinoman&category=13.*align="right">(.*)</td>#mi',
>> $text, $out);
>>
>> Or using any other patterndelimiter... ;)
>>
>> M. Sokolewicz wrote:
>>
>>> I thought I clearly stated that for the m modifier you need to use PCRE
>>> functions!
>>>
>>> eg:
>>>
>>>
>
preg_match('/username=champinoman&category=13.*align="right">(.*)</td>/mi',
>>> $text, $out);
>>>
>>> Champinoman wrote:
>>>
>>>> so does this look right:
>>>>
>>>> eregi
>>>>
>
("username=champinoman&category=13.*align=\"right\">(.*)</td>"m,$line,$out))
>>>>
>>>> is that where i am ment to put the 'm' modifier? or am i still off on
>>>> the wrong track?
>>>>
>>>>
>>>>
>>>>
>>>> "Graham Cossey" <[EMAIL PROTECTED]> wrote in message
>>>> news:[EMAIL PROTECTED]
>>>>
>>>>> From http://gnosis.cx/publish/programming/regular_expressions.html:
>>>>>
>>>>> "Sometimes you have a programming problem and it seems like the best
>>>>> solution is to use regular expressions; now you have two problems."
>>>>>
>>>>> To me regular expressions are some kind of black art, I've been
>>>>> programming
>>>>> for 20 years and until recently have pretty much managed to avoid
>>>>> them.
>>>>> The
>>>>> above URL is a pretty good tutorial.
>>>>>
>>>>> HTH
>>>>>
>>>>> Graham
>>>>>
>>>>> -----Original Message-----
>>>>> From: champinoman [mailto:[EMAIL PROTECTED]
>>>>> Sent: 28 September 2004 09:35
>>>>> To: [EMAIL PROTECTED]
>>>>> Subject: [PHP] Re: grabbing information from websites
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> instead of the POSIX regexp, tr using PERL style RegExps
>>>>>> (www.php.net/pcre) Once you've done that, you can add the pattern
>>>>>> modifier
>>>>>> 'm' to allow multilines .
>>>>>
>>>>>
>>>>> i think im lost now. i had a look at the site but im not sure what im
>>>>> looking at. any chance u could make a mock script up so i can see what
>>>>> your
>>>>> explaining?
>>>>>
>>>>> --
>>>>> PHP General Mailing List (http://www.php.net/)
>>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to