Solved

HTTP response help!!! i got 3hrs!!! Think im gonna cry :-)

Posted on 2004-08-13
12
166 Views
Last Modified: 2010-04-06
Hi all,

    I am using a maping company to display interactive maps on my site. They offer routing and proximity searches and the way they work is that you pass information to a url and it returns a location_id or a routing_id which you then include in a applet.

The problem is i'm a newbie, i dont know how to use the HTTP response as a variable. i.e.

if i open a browser and pass the url : -

themapcompany?street=$street&city=$city ...etc

then a location_id is returned to the screen. But i need to get that information as a variable, how?

Oh yeah and i have 3hrs to do this so i'm panicing.

Thanks, Chris.
0
Comment
Question by:icb01co2
12 Comments
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
ok, im not sure... but i think you're using an applet (if you're using jsp or php it would be alot easier)

anyways, in your applet (probably in your init() function), you can just do:
String myStreet = searchparms.get("street");
String myCity = searchparms.get("city");
... etc...

and then you can use these variables to get your location_id

(i think this is your question, if not, ive completely misunderstood)
0
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
oh, dear, i completely forgot about the most important part, which is the function that actually does it, hahaha, whoops

ok, i'll type it out more clearly, with code.... hmm, actually, it seems that theres this exact thing online...

http://www.rgagnon.com/javadetails/java-0049.html
0
 
LVL 1

Author Comment

by:icb01co2
Comment Utility
ok im not really descriping this clearly.

- if i opened a url i.e.

http://www.somesite.php?id=5;

and this would print to the screen the following: -

"1 | this is line one"


what i need to do is not to actually type the url into a browser but to use some php method that uses the url as an argument and returns what would be printed to the screen. i.e.

$from_url = someMethod("http://www.somesite.php?id=5");

here $from_url would equal "1 | this is line one".

Thanks, Chris.



0
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
hmm, im still rather unclear about what you want...

what i think you need is just to get the URL address thats in the browser window and put it into a function??

anyways, to get the complete URL, just do
<?php
$url = "http://".$_SERVER["HTTP_HOST"].$_SERVER['SCRIPT_NAME' ];

//then put into function
$from_url = someMethod($url);
?>
0
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
hmm, i forgot about your query strings... ok, ignore the prev post...

<?php
$url = "http://".$_SERVER["HTTP_HOST"].$_SERVER['SCRIPT_NAME' ].$_SERVER['QUERY_STRING'];

//then put into function
$from_url = someMethod($url);
?>

the extra "$_SERVER['QUERY_STRING']" will handle the query strings
0
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
of course, i may be way off on what i think you want... either way, let me know, thanks!
0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 1

Author Comment

by:icb01co2
Comment Utility
lol, erm i am probably the worse person to explain anything. But no i don't need to know how to retrive url information, i know how to do all that.

Here ill just show you: -

ive made a simple .php file called extract.php which outputs some numbers depending on what you pass to it i.e.

http://www.pitmanskills.com/extract.php?number=6

will return:

show me how you extract this number | 36
show me how you extract this number | 144

Basically i would like to know how you would get those numbers '36' and '144' and use them as .php variables by using some function that gets three response generated by my script. I think
fsockopen() is something like what i need but i dont know how to use it?

Thanks, Chris.




0
 
LVL 3

Expert Comment

by:alskdj80
Comment Utility
oh, i see... so the map website is not your own but rather something like mapquest?... you want to send in a url and then when they display on their site something like "location_id is 123" (in html), then you want to somehow get 123?

is that what you mean?
0
 
LVL 3

Accepted Solution

by:
dufduf earned 150 total points
Comment Utility
Is this even close?-)

<?php
$url = "http://www.pitmanskills.com/extract.php?number=6";
list($num1, $num2) = retrieve($url);
echo "num1: '$num1', num2: '$num2'\n";
print_r($numbers);

function retrieve($url) {

        $lines = file($url);
        $numbers = array();
        for ( $i = 0; $i < count($lines); $i++ ) {
                list($crap, $num) = explode("|", $lines[$i]);
                list($num, $crap) = explode("<", $num);
                if ( $num > 0 ) {
                        $numbers[] = trim($num);
                }
        }
        return $numbers;

}
?>
0
 
LVL 18

Expert Comment

by:arantius
Comment Utility
<?
$c=curl_init("url_goes_here");
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
$data=curl_exec($c)
curl_close($c);
?>

will put whatever is at that url into $data
0
 
LVL 1

Expert Comment

by:kahnadex
Comment Utility
When you make a HTTP POST to the Map website, it will always return a response that is a string.  I'm not way too familiar with PHP, but there is definitely an HTTP object included in it's API.

What you need to do is make a web request to the URL including your custom query strings and then capture the response.  The object you make the HTTP POST with should have a way to get a response or actually contain the response text itself.  From there, you can parse out what you are expecting back.

Parsing should be easy to do..  Once you have the response as a string.. Maybe the website returns you
"location_id=444533434&mapid=23232323&zoom=22"

You can split the string based on & to get these values in a string array
Array Item 1 : location_id=444533434
Array Item 2 : mapid=23232323
Array Item 3 : zoom=22

You can split each of those results based on the equals sign.  For example with item 1 above:
Array Item 1: location_id
Array Item 2: 444533434

This will work great with name/pair values.  If the response is encoded with parity or encrypted, it will of course have to be decode/decrypted.

Hope this helps
0
 
LVL 1

Author Comment

by:icb01co2
Comment Utility
Sorry for the late response guys, but your answers were exactly what i needed.
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Preface This is the third article about the EE Collaborative Login Project. A Better Website Login System (http://www.experts-exchange.com/A_2902.html) introduces the Login System and shows how to implement a login page. The EE Collaborative Logi…
Shoutout to Emily Plummer (http://www.experts-exchange.com/members/eplummer26.html) for giving me this article! She did most of it, I just finished it up and posted it for her :)    Introduction In a previous article (http://www.experts-exchang…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now