Je développe une application Web pour envoyer des SMS au mobile à partir d'un site Web comme 160by2 .
i Peut préparer l'URL requise pour la demande HTTP GET comme mentionné dans l'API fournie par le fournisseur de passerelle SMS smslane.com , Voici le lien pour l'API . P>
Comment envoyer le Demande HTTP de PHP? P>
J'ai utilisé CURL à cette fin, mais la réponse n'est pas affichée. Voici le code que j'ai utilisé, p> Y a-t-il d'autres méthodes pour ce faire? P> Toute aide est la bienvenue. P> Merci d'avance. p> Est-ce que quelqu'un pourrait me dire qu'il y a autre moyen d'envoyer cette demande HTTP sauf Je demande cela parce que le code de courbure actuel prenant trop de temps pour l'exécution et échoue après 60 secondes, j'ai augmenté max_execution_time à 120 dans php.ini sur mon système local, même s'il est ne pas faire bon pour moi :(. P> p> fsockopen () code> n'a pas été utilisé car le numéro de port inconnu, envoyé l'équipe de support du numéro de port. (Si un code pour FSOCOPOPEN via GET METHODE est invité :). ) P>
5 Réponses :
<?php print file_get_contents("http://some_server/some_file.php?some_args=true"); ?>
Rook peut être je pourrais essayer ceci :)
rien de mal avec votre code que je peux voir tout de suite. Avez-vous essayé de coller l'URL dans un navigateur afin que vous puissiez voir la réponse? Vous pouvez même utiliser Wget pour télécharger la réponse à un fichier. Je suppose que si vous voulez essayer FSocket que vous utiliseriez le port 80 car c'est le port HTTP par défaut. P>
@AIW J'ai essayé l'URL dans le navigateur et cela compte tenu de la réponse que le message envoyé.
Ensuite, vous ne ferez peut-être pas de codage d'URL. Également définir RetourTransfer à true.
Votre problème est la façon dont vous construisez l'URL. Les espaces que vous incluez dans la chaîne de requête entraîneront une URL de demande mal formée.
Voici un exemple qui reproduit votre situation: P>
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
echo http_build_query(array( 'user'=>'abc', 'password'=>'xyz', 'msisdn'=>'1234', 'sid'=>'WebSMS', 'msg'=>'Test message from SMSLane', 'fl'=>0 ));
Merci pour cette aide. J'accepte cela comme réponse parce que cela a résolu mon problème :) Bravo.
Essayez d'utiliser le code suivant.
$r = new HttpRequest('http://www.xencomsoftware.net/configurator/tracker/ip.php', HttpRequest::METH_GET); try { $r->send(); echo $r->getResponseCode(); if ($r->getResponseCode() == 200) { } }
Comment charger l'extension HTTPRequest sur mon système / serveur? J'ai essayé cette méthode mais une erreur d'erreur n'est pas chargée. Je ne pouvais pas comprendre comment installer cette extension.
Le code ci-dessous effectuera une demande HTTP avec CURL et renvoie la réponse dans $ Content code>.
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,'http://www.anydomain.com/anyapi.php?a=parameters');
$content = curl_exec($ch);
echo $content;
?>
Quelle est l'URL? Assurez-vous de désinfecter votre nom d'utilisateur et votre mot de passe. Vous pouvez envoyer une demande mal formée par accident.
@webdestroya je pourrais accepter des réponses si j'ai eu :)
@ShabbyRobe a mis à jour la question s'il vous plaît vérifier. Ici, j'ai fourni les détails factices mais pour des détails réels, je peux envoyer des SMS du panneau de contrôle du site Web donné.
Je suis à peu près sûr que j'ai trouvé votre problème, alors j'ai retravaillé ma réponse.
La réponse de la tour peut être utilisée pour tenter de réduire le temps d'exécution, mais CURL n'est presque certainement pas votre problème - il sera le serveur distant. Jetez ensemble un code de courbure qui interroge votre localhost et vous devriez voir qu'il est instantané. Peut-être que le serveur que vous interrogez n'est pas si rapide