http post request of respond


Höfundur
tralli7
Nýliði
Póstar: 2
Skráði sig: Þri 28. Jún 2011 14:15
Reputation: 0
Staða: Ótengdur

http post request of respond

Pósturaf tralli7 » Þri 28. Jún 2011 14:22

Sælir snillingar, ég er með smá spurningu
Ég er með form sem þarf að fylla út og upplýsingarnar sendar með http post á aðra vefslóð, köllum hana http://slodutansidu/afreidafyrirspurn þannig að ég er með þessa slóð í action attribute í forminu. Ég sendi upplýsingarnar of fæ til baka xml skjal með upplýsingum sem ég þarf að vinna úr. Hérna er ég stopp, eftir að ég smelli á submit fæ ég xml skjalið upp í vafranum á slóðinni http://slodutansidu/afreidafyrirspurn ég þarf að vinna úr skjalinu á vefsíðunni minni þ.e eftir að ég er búinn að senda fyrirspurnina og fá xml skjalið til baka þá þarf ég að gera eitthvað við upplýsingarnar. Hvernig er þetta gert, ég veit að þetta er eitthvað voðalega einfalt, þarf ég að nota javascript xmlHttp object?



Skjámynd

tdog
Vaktari
Póstar: 2012
Skráði sig: Mán 06. Des 2010 17:32
Reputation: 24
Staða: Ótengdur

Re: http post request of respond

Pósturaf tdog » Þri 28. Jún 2011 14:42

Kynntu þér Ajax, prototype.js er sniðugt framework (http://api.prototypejs.org/ajax/Ajax/Request/)




Höfundur
tralli7
Nýliði
Póstar: 2
Skráði sig: Þri 28. Jún 2011 14:15
Reputation: 0
Staða: Ótengdur

Re: http post request of respond

Pósturaf tralli7 » Þri 28. Jún 2011 18:25

Ég reyndar vissi af Ajax en fæ alltaf error code 500 þegar ég nota það, jafnvel þegar ég nota jquery, fæ sama error þegar ég nota php. Virðist bara ganga upp ef ég sendi fyrirspurnina frá html formi. Ég skal pósta php kóðanum sem ég notaði:

Kóði: Velja allt

<?php
   function do_post_request($url, $data, $optional_headers = null)
   {
     $params = array('http' => array(
              'method' => 'POST',
              'content' => $data
            ));
     if ($optional_headers !== null) {
      $params['http']['header'] = $optional_headers;
     }
     $ctx = stream_context_create($params);
     $fp = @fopen($url, 'rb', false, $ctx);
     if (!$fp) {
      throw new Exception("Problem with $url, $php_errormsg");
     }
     $response = @stream_get_contents($fp);
     if ($response === false) {
      throw new Exception("Problem reading data from $url, $php_errormsg");
     }
     return $response;
   }
?>

<html>
<head>
</head>
<body>
   <?php
      $response = do_post_request("http://slodutansidu/afreidafyrirspurn","Notandanafn=test&Lykilord=test1234&Adgerd=prufa);
      echo $response;
   ?>
</body>
</html>