slpctrl Posted January 26, 2008 Share Posted January 26, 2008 Hello, I need help here. I need to get a page in curl, double the random number and submit it. I know how to do this, but for some reason preg_match_all isn't retrieving the number. Here is what I got: <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,"$url"); //other options etc etc $result = curl_exec($ch); curl_close($ch); preg_match_all("/return ([a-zA-Z0-9]*)/", $result, $matches); $string = $matches[1][0]; echo $string; ?> And the HTML is gonna look something like this: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Firm Investments</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <center> <br /><b>You have 1 second to double and return: <hr>7998427334242<hr><form method="get"> Number <input type="text" name="number"><p /> <input type="submit" value="Remove" style="border:solid 1px;"> </form> </div> </body> </html> Why wouldn't this work? Curl is working correctly, I can echo $result and get the page, but the preg_match_all isn't retrieving anything >_< EDIT: Changed title and moved topic to what's really being asked about. Quote Link to comment Share on other sites More sharing options...
toplay Posted January 26, 2008 Share Posted January 26, 2008 Your expression doesn't account for the colon ( that I see in your sample HTML. It also doesn't take into account the <hr> tags. Is the number you're after 7998427334242 ? Quote Link to comment Share on other sites More sharing options...
slpctrl Posted January 26, 2008 Author Share Posted January 26, 2008 Your expression doesn't account for the colon ( that I see in your sample HTML. It also doesn't take into account the <hr> tags. Is the number you're after 7998427334242 ? Yup Quote Link to comment Share on other sites More sharing options...
slpctrl Posted January 26, 2008 Author Share Posted January 26, 2008 Even when I add the tag, the colon and a combination every way I can think, no luck. ??? Quote Link to comment Share on other sites More sharing options...
slpctrl Posted January 26, 2008 Author Share Posted January 26, 2008 Ah it was the tags, thanks. This works: $result = curl_exec($ch); curl_close($ch); preg_match_all("/<hr>([a-zA-Z0-9=+\/]*)/", $result, $matches); echo ($matches[1][0]); >_> Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.