Solved

ASP, PHP, or XML Question

Posted on 2009-06-30
4
381 Views
Last Modified: 2013-12-13
We need to create XML parsing. Company XYZ has developed a program for us to use. We are supposed to have replicated sites and Company XYZ controls the backend database. We have to create something to get their data. We have to program a code to pull the url to get a repid(user id)  from the rename(user name), and the repid has to imported into the website so that the repid can be associated to an iframe and edi.asp calls.

Example: http://mywebsite.com/myname myname has to be pulled from the url, get the associated repid, then associate a name, email, order data, and such with it. After the data is pulled in storage, we needto hold it storage and use it later that session in an iframe or page to associate repid with sales, signups, and pull contact info into a page.
The edi.asp link points to XML data. We need to extract that that based on repid and display it into a webpage and associate sales to distributor that sent them to the site.
Sample url we have to extract xml data from. http://shop.mywebsite.com/EDI.asp?companyid=111&apikey=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa&type=countries (numbers have been changed for security)
here is a sample code they sent us:
VBScript as your scripting language: Can this be translated from asp to PHP in order to use on a linux server to get the xml data from a sql database using asp.net?

VBScript as your scripting language:
 
            function fcnGetXML(RepURL) 
 
                        DataToSend = "companyid=111&apikey=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&type=reps&sitename=" & RepURL
                        servername = cstr(request.ServerVariables("Server_Name"))
 
                        postUrl = "http://subdomain.mywebsite.com/EDI.asp"
 
                        'Set url to send request to including web service name.
 
                        postUrl = postUrl                  
 
                        Set xmlhttp = server.Createobject("MSXML2.XMLHTTP")
 
                        'Prepare request header.
 
                        xmlhttp.Open "POST",postUrl,false
 
                        xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"                      
 
                        'Send request:
 
                        xmlhttp.send DataToSend
 
                        If cstr(xmlhttp.Status) = "200" then
 
                                    'Success, parse result
 
                                    fcnGetXML = xmlhttp.responseText
 
                        Else
 
                                    'failure handle failure
 
                                    fcnGetXML = "0"
 
                        End if
 
            end function

Open in new window

0
Comment
Question by:itsmedtt
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 
LVL 16

Expert Comment

by:golfDoctor
ID: 24745536
0
 
LVL 16

Assisted Solution

by:golfDoctor
golfDoctor earned 100 total points
ID: 24745538
0
 
LVL 110

Accepted Solution

by:
Ray Paseur earned 400 total points
ID: 24745633
This teaches the way to translate your function into PHP.  HTH, ~Ray
<?php // RAY_temp_fcnGetXML.php with PHP as your scripting language:
error_reporting(E_ALL);
 
// DECLARE THE FUNCTION
function fcnGetXML($RepURL)
{
// THE SITE WE WANT TO TALK TO
    $server_url  = "subdomain.mywebsite.com";
 
// THE PAGE INSIDE THE WEB SITE
    $request_uri = "/EDI.asp";
 
// THE POST DATA THAT WE WANT TO SEND
    $dat = array(
      'companyid' => '111',
      'apikey'    => 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
      'type'      => 'reps',
      'sitename'  => $RepURL
     );
 
// CONSTRUCT THE POST STRING URLENCODED AND SEPARATED BY AMPERSANDS
    $postdata  = '';
    foreach ($dat as $key => $val)
    {
        $postdata .= '&' . $key . '=' . urlencode($val);
    }
    $postdata = ltrim($postdata, '&');
 
// CONSTRUCT THE HEADERS
    $header = '';
    $header .= "POST $request_uri HTTP/1.0\r\n";
    $header .= "Content-Type: application/x-www-form-urlencoded\r\n";
    $header .= "Content-Length: " . strlen($postdata) . "\r\n\r\n";
 
// SHOW WHAT WE ARE GOING TO DO - OMIT THIS SEGMENT IN PRODUCTION CODE
    echo "<pre>\n";
    echo "REQUEST DATA FOLLOWS:\n";
    var_dump($server_url);
    var_dump($request_uri);
    var_dump($postdata);
    var_dump($header);
    echo "</pre>\n";
 
 
// OPEN THE SOCKET TO THE PAGE
    $fp = fsockopen ($server_url, 80, $errno, $errstr, 30);
 
// TEST FOR VERIFICATION
    if (!$fp)
    {
        die("HTTP ERROR $server_url $request_uri fsockopen() FAILED ERRNO=$errno ERRSTR=$errstr");
    }
 
// HTTP OPEN - WRITE HEADER AND REQUEST
    fputs ($fp, $header . $postdata);
 
// HTTP OPEN - READ RESPONSE
    $reply = '';
    while (!feof($fp))
    {
        $reply .= fgets($fp, 1024);
    }
 
// SEE WHAT THE FOREIGN SITE SAID  - OMIT THIS SEGMENT IN PRODUCTION CODE
    echo "<pre>\n";
    echo htmlentities($reply);
    echo "</pre>\n";
 
// RETURN THE DATA
    return $reply;
 
} // END OF FUNCTION
 
 
// SAMPLE CALLING SEQUENCE
$rep_identity = 'Billy';
$xml_response = fcnGetXML($rep_identity);
echo $xml_response;

Open in new window

0
 

Author Comment

by:itsmedtt
ID: 24747428
Thanks for your replies. Let me check these out and I will get back to you.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
PHP function parameters defined 14 43
php subtract from date 2 31
Survey branching tutorial 11 49
Echo'd values in dropdowns 6 32
These days socially coordinated efforts have turned into a critical requirement for enterprises.
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

697 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