php in xml?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3

Koen Vlaswinkel

Koen Vlaswinkel

18/06/2013 14:01:36
Quote Anchor link
Dit gaat helaas niet werken, je moet in file_get_contents de url opgeven zoals je hem ook invoert in je browser. Nu krijgt de server dit door:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
session_start();
header("Content-Type:text/xml");
echo '<?xml version="1.0" encoding="utf-8" ?' . '>';
?>

<queue>
  <apiKey>mijnapisleutel</apiKey>
  <hash><?php echo "mijnhash"; ?></hash>
</queue>


Maar de server wil dit binnenkrijgen:

<?xml version="1.0" encoding="utf-8" ?>
<queue>
  <apiKey>mijnapikey</apiKey>
  <hash>mijnhash</hash>
</queue>


Dus je zal iets moeten doen als file_get_contents('http://www.mijnserver.nl/inc_xml/inc_xml_dlcv.php');
Gewijzigd op 18/06/2013 14:08:12 door Koen Vlaswinkel
 
PHP hulp

PHP hulp

20/12/2024 22:57:47
 
Francoi gckx

Francoi gckx

18/06/2013 14:06:17
Quote Anchor link
hmm ik krijg dit:

8 The XML file is empty. Please verify that you have send us a variable "queue" filled with the XML data.

Toevoeging op 18/06/2013 14:06:44:

maar dat zou toch niet moeten uitmaken want ik haal een xml file op precies zo maar die is puur xml

Toevoeging op 18/06/2013 15:43:44:

Ik heb nu die xmlgegevens proberen te bouwen met SimpleXML maar geen succes

Toevoeging op 18/06/2013 15:43:55:

wat een warme lange dag
 
Francoi gckx

Francoi gckx

22/06/2013 21:46:20
Quote Anchor link
Ik hoop dat er nog mensen zijn die mij kunnen helpen met dit aangezien de admins van de site's api niet meer reageren.

bestand 1 de sessie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$_SESSION
['hash'] = $gDwLink->params->hash;
echo get_dlcv();
?>


bestand 2 de functie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
session_start();
function
get_dlcv() {
    $ch = curl_init("http://api.online-convert.com/queue-status");
    $request["queue"] = file_get_contents("inc_xml/inc_xml_dlcv.php");
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: multipart/form-data"));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
    $response = curl_exec($ch);

    $info = curl_getinfo( $ch );
    $error =  curl_error($ch);
    curl_close ($ch);
    trigger_error(serialize($response));
    trigger_error(serialize($info));
    trigger_error(serialize($error));
    return $response;
}

?>


bestand 3 inc_xml/inc_xml_dlcv.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php session_start();
header('Content-Type: text/xml');
header('Pragma: no-cache');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo "<queue>\n";
echo "<apiKey>5a16411104cab</apiKey>\n";
echo "<hash>".$_SESSION['hash']."</hash>\n";
echo "</queue>\n";
?>


Ik krijg de api's eigen foutmelding:
6 XML structure invalid. Please check
 
Koen Vlaswinkel

Koen Vlaswinkel

22/06/2013 21:54:48
Quote Anchor link
Zoals ik al heb gezegd in mijn vorige post, zal je het PHP script moeten laten uitvoeren, dus je kunt niet het lokale bestand aanspreken. Je zult het door een webserver moeten laten uitvoeren, dus in file_get_contents moet je je eigen url zetten naar het bestand, zoiets als http://mijnwebsite.nl/inc_xml/inc_xml_dlcv.php
 
Francoi gckx

Francoi gckx

22/06/2013 21:58:02
Quote Anchor link
Ok ik heb even in de root gezet in plaats van de folder hij vind hem nu

doe het op jou manier Koen maar krijg de (dezelfde) volgende probleem

106 Hash not valid.
Gewijzigd op 22/06/2013 22:01:50 door Francoi gckx
 
Koen Vlaswinkel

Koen Vlaswinkel

22/06/2013 22:04:07
Quote Anchor link
Dat betekent dus dat de hash van het bestand dat je wilt opvragen niet geldig is, en die komt uit de session. Volgensmij staat er op de website dat een hash maar 24 uur geldig is, dus let daar op.
 
Francoi gckx

Francoi gckx

22/06/2013 22:05:58
Quote Anchor link
Ja maar die hash word live aangemaakt zodra ik iets upload en naar hun api verzend.

Het is gewoon de xml in combinatie met php, op een of ander manier

Als ik de xml maak zonder de php en dus ook hardcoded met de hash erin doet die het
 
Rogier de Vries

Rogier de Vries

23/06/2013 13:45:35
Quote Anchor link
DIt is waarschijnlijk vanwege je filehandler. Ervan uitgaande dat je Apache 2 gebruikt, zet je de volgende regel in /etc/apache2/httpd.conf (werkt dan op alle sites) in je /etc/apache2/sites-enabled/jouwsite (enkel op deze site dan) of je .htaccess in de root van je site, bijvoorbeeld /var/www/jouwsite/ (ook enkel op deze site) :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
AddHandler server-parsed .xml


bij sites-enabled en httpd.conf moet je even de service restarten.
Dir's kunnen afwijken, deze zijn standaard bij Debian.
Gewijzigd op 23/06/2013 13:48:04 door Rogier de Vries
 
Francoi gckx

Francoi gckx

23/06/2013 14:22:11
Quote Anchor link
Ik heb geen 1 van die mappen waar mij site gehost is
 
Rogier de Vries

Rogier de Vries

27/06/2013 20:28:32
Quote Anchor link
je hebt toch wel een root van je site ;)
Als daar geen .htaccess staat, moet je die even maken.
 

Pagina: « vorige 1 2 3



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.