PHP call api variable einfügen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
array
break
code
erkannt code
fehler
folgende fehlermeldung
methode
parameter
post
problem
schnelle antwort
setzen
string
switch
teil
tip
type
url
vergessen
zeile
-
Hey,
habe in PHP eine API aufgerufen mit der Methode 'GET', es funktioniert soweit auch alles.
Nun möchte ich aber in einem meiner Parametern eine Variable einfügen, aber irgendwie wird diese nicht als eine erkannt.
<?php $method = 'GET'; $url = 'MeineWebsite'; $params = array( 'secret' => '****', 'name' => $user, <-------------------HIER ); // Abhängig von der API, hier json $headers = array( 'Accept: application/json', 'Content-Type: application/json', ); $curl = curl_init(); switch($method) { case 'GET': $url .= '?' . http_build_query($params); break; case 'POST': curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($params)); break; case 'PUT': curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($params)); break; case 'DELETE': curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE'); $url .= '?' . http_build_query($params); break; } curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $response = curl_exec($curl); $code = curl_getinfo($curl, CURLINFO_HTTP_CODE); curl_close($curl); if ($code == 200) { $response = json_decode($response, true); print_r($response); } else { echo 'error ' . $code; } ?>
Danke für alle Tipps! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich wüsste nicht wo du da ein Problem hast. Du musst natürlich $user vorher setzen.
$user = "username"; $params = array( 'secret' => '****', 'name' => $user, ); var_dump($params);
Aber sonst erzeugt dieser Teil deines Codes exakt das was du dort vor hast:
array(2) { ["secret"]=> string(4) "****" ["name"]=> string(8) "username" }
Beitrag zuletzt geändert: 18.5.2018 20:29:55 von horstexplorer -
Ah Okay, sehe denn Fehler hatte vergessen die Variable zu setzen... Vielen Dank für die schnelle antwort.
Beitrag zuletzt geändert: 18.5.2018 21:22:49 von nusus -
nusus schrieb:
Ah Okay, sehe denn Fehler hatte vergessen die Variable zu setzen
An dieser Stelle sei noch einmal erwähnt, dass zur Entwicklungszeit diese zwei Codezeilen sinnvoll sind.
ini_set('display_errors', 1); error_reporting(E_ALL);]
Sie erleichtern das Debuggen wesentlich.
Für obiges Problem wird folgende Fehlermeldung ausgegeben.
Notice: Undefined variable: user
Für den Onlinebetrieb müssen diese Zeilen wieder entfernt werden. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage