|
Posted by Tim Van Wassenhove on 09/08/05 03:27
On 2005-09-07, Philip Ronan <invalid@invalid.invalid> wrote:
> "tom pester" wrote:
>
>> Hi Phil,
>>
>>> On the other hand, extracting two numbers from the HTML source of a
>>> web page and adding them together is ridiculously easy. A combination
>>> of file_get_contents() and simple string matching is all you need.
>>
>> My point is that there is no real difference between the turing numbers and
>> the addition other than turing number are more difficult to read (fo now).
>
> This took 2 minutes to write:
>
>=====================================================
> $s = file_get_contents("http://thereference.dyndns.org:30000/MailPage.php");
> $re = "/much is ([0-9]+) \+ ([0-9]+) .* humanGuid" value="([^"]+)"/m";
> if (preg_match($re,$s,$m)) {
> echo 'Access code = ' . (1*$m[1]+1*$m[2]) . '\r\n';
> echo 'Session ID = ' . $m[3];
> } else echo "Couldn't find numbers";
>=====================================================
>
> Now I have the answer to your addition sum, and the session ID from your
> "hidden" field. That wasn't difficult, was it?
With the simpletest browser you only need to change those fields that
you are interested in ;) (No need to keep track of hidden stuff..)
<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors', TRUE);
require_once('simpletest/browser.php');
$ua =& new SimpleBrowser;
$ua->get('http://thereference.dyndns.org:30000/MailPage.php');
$content = $ua->getContentAsText();
preg_match('#How much is (\d+) \+ (\d+) \?#', $content, $matches);
$ua->setField('humanSum', $matches[0][1] + $matches[0][2]);
$ua->setField('email', 'pester.1.timvw@spamgourmet.com');
$ua->setField('url', 'here we go...');
$ua->clickSubmit('Send email');
?>
--
Met vriendelijke groeten,
Tim Van Wassenhove <http://timvw.madoka.be>
[Back to original message]
|