curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);string(332) "<?xml version="1.0" encoding="UTF-8"?>
<xml>
<messages recipientcount="1">
<message>
<to>00000000</to>
<messageid>FB2FF641</messageid>
<errortext>Success</errortext>
</message>
</messages>
</xml>"
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
$response = curl_exec($ch);
curl_close($ch);
$output = $modx->getChunk('test', array(
'messageid' => (string)$response -> messages -> message -> messageid
));
return $output;
This question has been answered by grogorio. See the first response.
$response = curl_exec($ch);
curl_close($ch);
$xml = simplexml_load_string($response);
foreach ($xml->messages as $message) {
//...do something
}
{
$to = ($messages->message->to);
$messageid = ($messages->message->messageid);
$errortext = ($messages->message->errortext);
$output .= $to.'<br>'.$messageid.'<br>'.$errortext;
}
return $output;
{
$output .= $modx->getChunk('test', $messages);
}
[[+messages.message.to]]<br> [[+messages.message.errortext]]<br> [[+messages.message.messageid]]
First of all why application/x-www-form-urlencoded instead application/xml?I can't really give you a definitive answer as the curl connection script is supplied by the service provider. However if I use application/xml, the server responds with "Invalid credentials". [ed. note: grogorio last edited this post 8 years, 1 month ago.]
foreach ($xml->messages as $messages) {
$output .= $modx->getChunk('test', array(
'to' => (string)$messages->message->to,
'messageid' => (string)$messages->message->messageid,
'errortext' => (string)$messages->message->errortext
));
}
[[+to]]<br> [[+errortext]]<br> [[+messageid]]