Hallo!
ich betreibe einen kleinen OnlineShop, den ich nun um eine Bestandsabfrage erweitern möchte. Dazu stellt mir mein Zulieferer eine Schnittstelle zur Verfügung, die mir bei Abfrage eine XML-Datei mit den Verfügbarkeiten der Artikel zurückgibt.
Laut Zulieferer soll ich die Abfrage mit cURL machen. Daher habe ich nun folgendes erstellt:
PHP-Code:
<?php
$url = "https://adressezumbestand/";
$postfields =
'<?xml version="1.0"?>
<bestandsabfrage>
<artikel>
<artnr>401017</artnr>
<artnr>401167</artnr>
<artnr>401171</artnr>
<artnr>401748</artnr>
<artnr>401791</artnr>
<artnr>402127</artnr>
<artnr>404398</artnr>
<artnr>405023</artnr>
<artnr>405458</artnr>
</artikel>
</bestandsabfrage>';
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
echo curl_error($ch);
curl_close ($ch);
echo $result;
?>
Da ich aufgrund des nicht extern zertifizierten SSL-Zertifikates immer einen Fehler bekommen habe, habe ich beim Support nachgefragt. Dieser sagte mit, dass ich die cURL mit den Optionen --insecure bzw. -k aufrufen soll.
Daher habe ich den Code um die Zeilen
PHP-Code:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
erweitert. Nun erhalte ich keine Fehlermeldung mehr, aber dafür immer noch eine leere Rückgabe.
Meine Frage ist nun: habe ich --insecure / -k mit Hilfe der zwei Zeilen korrekt umgesetzt?
Vielen Dank!