begin process at 2012 05 27 18:28:06
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > SCRIPT D'ENVOI DE SMS DEPUIS SFR

SCRIPT D'ENVOI DE SMS DEPUIS SFR


 Information sur la source

Note :
Aucune note
Catégorie :Divers Classé sous :Envoi sms, Envoyer sms, Sms SFR, Script SMS Niveau :Initié Date de création :20/09/2009 Date de mise à jour :20/09/2009 19:11:27 Vu / téléchargé :8 063 / 473

Auteur : DarkM60

Ecrire un message privé
Commentaire sur cette source (22)
Ajouter un commentaire et/ou une note

 Description

Ce petit script vous permet d'envoyer des SMS depuis votre compte SFR (Vous avez besoin d'un identifiant et d'un mot de passe). Il se connecte pour vous sur le site de SFR par la librairie de CURL, fait l'authentification et l'envoi du texto.

Ca m'embêtait d'avoir à chaque fois à taper mes identifiants pour envoyer des textos depuis mon PC, alors voici un petit script qui s'occupe de tout ce qui est connexion, formulaire, validation.

Le script a BESOIN d'un fichier cookie et surtout d'un fichier vide. Ça peut paraître étrange mais c'est requis lors de l'envoi de la requête vers SFR.

Source

  • <?php
  • /**
  • * Script d'envoi de textos depuis un compte SFR
  • * Envoi possible si le message ne dépasse pas 3 * 160 caractères (3 textos)
  • *
  • * @author Tristan F. <darkm60@gmail.com> http://esya-creations.com
  • * @version 1.0
  • * @todo Envoi de MMS/Tester les destinataires multiples/Tester vers l'étranger/Préciser les erreurs
  • */
  • Define('AUTHENTIFICATION', 'http://www.sfr.fr/communiquer/messagerie/sfr-messagerie/authentification/');
  • Define('COOKIE_FILE','cookie.txt'); //Fichier COOKIE
  • Define('EMPTY_FILE',"emptyfile.txt"); //DOIT être un fichier vide
  • Define('USER_AGENT','Mozilla/5.0'); //User-agent
  • Define('LOGIN','06123456789'); //Login de votre compte SFR (Votre numéro)
  • Define('PASSWORD','1234'); //Password de votre compte SFR
  • $cible = "0611223344";
  • $message = "Message à envoyer";
  • if(send_sms($cible,$message)) echo("Texto envoyé !");
  • else echo("Impossible de trouver le token ou message trop long. Message non transmis. Mauvais logins ?");
  • /**
  • * Fonction d'envoi de sms
  • *
  • * @param int $cible Numéro de téléphone du destinataire
  • * @param int $message Message pour le destinataire. Supporte les accents. Jusqu'à 480 caractères.
  • * @return int 1 si succès 0 en cas d'échec.
  • */
  • function send_sms($cible,$message)
  • {
  • //Encodage d
  • $message = utf8_decode($message);
  • $ch = curl_init();
  • // set url
  • curl_setopt($ch, CURLOPT_URL, AUTHENTIFICATION);
  • curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
  • curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
  • curl_setopt($ch, CURLOPT_USERAGENT, USER_AGENT);
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  • // $output contains the output string
  • $output = curl_exec($ch);
  • curl_close($ch);
  • $ch = curl_init();
  • curl_setopt($ch, CURLOPT_URL, "https://www.sfr.fr/cas/login?service=https://www.sfr.fr/j_spring_cas_security_check");
  • curl_setopt($ch, CURLOPT_POST, TRUE);
  • curl_setopt($ch, CURLOPT_POSTFIELDS,"target=&_eventId=&currentPage=&username=".LOGIN."&password=".PASSWORD);
  • curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
  • curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
  • curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
  • curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  • $ret = curl_exec($ch);
  • curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/index.do");
  • $ret = curl_exec($ch);
  • if ($ret === FALSE) {
  • die(curl_errno($ch));
  • }
  • preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);
  • if(!isset($out[1]))
  • {
  • return 0;
  • }
  • $token = $out[1];
  • $array = Array(
  • "CSRFToken" => $token,
  • "idMessage" => '',
  • "submitMethod" => 'web',
  • "todo" => '',
  • "boxId" => 'sent',
  • 'galleryItem' => '-1',
  • 'msisdns' => $cible,
  • 'emails' => '',
  • 'emoticones' => ':)',
  • 'message' => $message,
  • 'file' => '@'.realpath(EMPTY_FILE)
  • );
  • curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/submit.do");
  • curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
  • curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
  • curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
  • curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
  • curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  • curl_setopt($ch, CURLOPT_POST, TRUE);
  • curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
  • $ret = curl_exec($ch);
  • preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);
  • $token = $out[1];
  • //Confirmation
  • $array = Array(
  • "CSRFToken" => $token,
  • "idMessage" => '',
  • "submitMethod" => 'web',
  • "todo" => '',
  • "boxId" => 'sent',
  • 'emoticones' => ':)',
  • 'mms' => 'false',
  • 'message' => $message
  • );
  • curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/confirm.do");
  • curl_setopt($ch, CURLOPT_POST, TRUE);
  • curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
  • $ret = curl_exec($ch);
  • curl_close($ch);
  • if(strpos($ret,"Le Texto a &eacute;t&eacute; exp&eacute;di&eacute; avec succ&egrave;s&nbsp;!") === false) return 0;
  • else return 1;
  • return 1;
  • }
  • ?>
<?php
/**
 * Script d'envoi de textos depuis un compte SFR
 * Envoi possible si le message ne dépasse pas 3 * 160 caractères (3 textos)
 * 
 * @author Tristan F. <darkm60@gmail.com> http://esya-creations.com
 * @version 1.0
 * @todo Envoi de MMS/Tester les destinataires multiples/Tester vers l'étranger/Préciser les erreurs
 */


Define('AUTHENTIFICATION', 'http://www.sfr.fr/communiquer/messagerie/sfr-messagerie/authentification/');
Define('COOKIE_FILE','cookie.txt');						//Fichier COOKIE
Define('EMPTY_FILE',"emptyfile.txt");					//DOIT être un fichier vide
Define('USER_AGENT','Mozilla/5.0');						//User-agent
Define('LOGIN','06123456789');							//Login de votre compte SFR (Votre numéro)
Define('PASSWORD','1234');								//Password de votre compte SFR

$cible = "0611223344";
$message = "Message à envoyer";

if(send_sms($cible,$message)) echo("Texto envoyé !");
else echo("Impossible de trouver le token ou message trop long. Message non transmis. Mauvais logins ?");

/**
 * Fonction d'envoi de sms
 * 
 * @param int $cible Numéro de téléphone du destinataire
 * @param int $message Message pour le destinataire. Supporte les accents. Jusqu'à 480 caractères.
 * @return int 1 si succès 0 en cas d'échec.
 */
function send_sms($cible,$message)
{
	//Encodage d
	$message = utf8_decode($message);
	
	$ch = curl_init();
	
	// set url
	curl_setopt($ch, CURLOPT_URL, AUTHENTIFICATION);
	curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
	curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
	curl_setopt($ch, CURLOPT_USERAGENT, USER_AGENT);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	
	// $output contains the output string
	$output = curl_exec($ch);
	
	curl_close($ch);
		
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, "https://www.sfr.fr/cas/login?service=https://www.sfr.fr/j_spring_cas_security_check");
	curl_setopt($ch, CURLOPT_POST, TRUE);
	curl_setopt($ch, CURLOPT_POSTFIELDS,"target=&_eventId=&currentPage=&username=".LOGIN."&password=".PASSWORD);
	curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
	curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
	curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	
	$ret = curl_exec($ch);
	
	curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/index.do");

	
	$ret = curl_exec($ch);
	
	if ($ret === FALSE) {
	    die(curl_errno($ch));
	}
	
	preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);
	
	if(!isset($out[1]))
	{
		return 0;
	}
	
	$token = $out[1];
	
	$array = Array(
	"CSRFToken" => $token,
	"idMessage" => '',
	"submitMethod" => 'web',
	"todo" => '',
	"boxId" => 'sent',
	'galleryItem' => '-1',
	'msisdns' => $cible,
	'emails' => '',
	'emoticones' => ':)',
	'message' => $message,
	'file' => '@'.realpath(EMPTY_FILE)
	);
	
	curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/submit.do");
	curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
	curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
	curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_POST, TRUE);
	curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
	$ret = curl_exec($ch);

	preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);
	$token = $out[1];
	
	//Confirmation
	$array = Array(
	"CSRFToken" => $token,
	"idMessage" => '',
	"submitMethod" => 'web',
	"todo" => '',
	"boxId" => 'sent',
	'emoticones' => ':)',
	'mms' => 'false',
	'message' => $message
	);
	
	curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/confirm.do");
	curl_setopt($ch, CURLOPT_POST, TRUE);
	curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
	$ret = curl_exec($ch);
	
	curl_close($ch);

	if(strpos($ret,"Le Texto a &eacute;t&eacute; exp&eacute;di&eacute; avec succ&egrave;s&nbsp;!") === false) return 0;
	else return 1;
		
	return 1;
}
?>

 Conclusion

Des améliorations seront à venir :

* Gestion de l'envoi des MMS
* Destinataires multiples (Je n'ai pas encore testé)
* Textos vers l'étranger ?
* Préciser les erreurs
* Petit fichier HTML à côté avec un formulaire basique.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • cookie.txt
  • emptyfile.txt
  • smsSFR.phpTélécharger ce fichier [Réservé aux membres club]Voir ce fichier4 323 octets

Télécharger le zip


 Historique

20 septembre 2009 19:04:29 :
Petits correctifs
20 septembre 2009 19:11:28 :
Modification du texte descriptif

 Sources du même auteur

Source avec Zip KORREKTOR, FAÎTES TRAVAILLER VOS VISITEURS !
ORDRE DES LETTRES DANS UN MOT, ETUDE DE L'UNIVERSITÉ DE CAMB...
TRI PAR INSERTION
Source avec une capture BARRE DE POURCENTAGE ADAPTABLE (LIBRAIRIE GD UTILISÉE)
LIRE UNE DATABASE EN TXT

 Sources de la même categorie

Source avec une capture MODULE JOOMLA 1.5 NOW LISTENING par Alcantornet
Source avec Zip Source avec une capture UPLOAD CENTER par basssem81
Source avec Zip COMPTEUR DE CLIQUE PHP AVEC JQUERY par devgoneti
Source avec Zip LIVRE D'OR SIMPLE (POUR DÉBUTANT) par devgoneti
Source avec Zip SCRIPT TRAVAUX POUR VOTRE SITE par FleuryK

Commentaires et avis

Commentaire de sitajony le 20/09/2009 19:55:21

Ah ba sa sa ve me servir je vasi tester sa car j'envoie de message par SFR donc sa serait cool si sa marcherais super bien... Mais comment savoir combien d'sms ils nous reste de gratuit? (On peut envoyer 10SMS/Jour gratuitement vers SFR...

Commentaire de sitajony le 20/09/2009 19:59:07

Euh je suis peut être nul mais euh la fonction curl_init() n'est pas défini... C'est où le problemme?

Commentaire de sitajony le 20/09/2009 20:01:41

Ah non c'est bon c'est que j'ai pas la libraire curl...

Commentaire de DarkM60 le 20/09/2009 20:03:00

Hmm.. Mon script ne gère que l'envoi sachant que j'ai un forfait illimité personnellement c'est le dernier de mes soucis :3. Après tu peux toujours te connecter sur SFR de temps en temps voir où tu en es.

Commentaire de sitajony le 20/09/2009 20:07:52

Ah ok... Oui ou sinon je ferais un script contant le nombre de messages envoyé tout les 160 caractères...
Sinon j'ai trouvé un hebergeur avec la librairie CURL mais sa affiche sa:
Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /var/www/hbg.fr/s/i/sitajony/sfr/index.php on line 43

Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /var/www/hbg.fr/s/i/sitajony/sfr/index.php on line 59
Impossible de trouver le token ou message trop long. Message non transmis. Mauvais logins ?
C'est quoi le probleme?

Commentaire de DarkM60 le 20/09/2009 21:21:34

Sitajony > Ca signifie que ton serveur est en safe mode. En gros... Tu devrais faire ça en local :). Tu installes WAMP, Easyphp, LAMP.. Ce que tu veux, tu actives CURL et là ça ira tout seul. Le safe mode c'est un mode plein de restrictions pour les hébergements mutualisés.

Commentaire de sitajony le 20/09/2009 21:24:34

Ah oui ok merci je pensais bien mais bon... Et j'avais testé en local (avec Movamp) mais sa marchais pa j'ai surement désactivé un truc dans php.ini...

Commentaire de dadoo1 le 21/09/2009 16:50:29

Il a l'air génial ce code mais es-ce légal d'installer un tel script sur son site web ?

Commentaire de Teclis01 le 22/09/2009 12:43:44

ça manque cruellement d'objet mais le script sera utile à quelques personnes.
Bonne initiative

Commentaire de Teclis01 le 22/09/2009 12:45:51

Par contre le niveau initié pour ça me parait "un peu" osé... débutant plutot, le niveau sera a revoir selon la conception du bouzin!
Good Luck & Have Fun

Commentaire de le_brunard le 24/09/2009 09:39:14

Alors j'ai pas encore testé ! Par contre, pour ceux qui ont un nabaztag c'est trop bien ! Merci !

Commentaire de DarkM60 le 24/09/2009 14:43:06

@Teclis01 : C'est fait à la va vite et d'une traite, et fonctionnel, et pour l'instant je le laisse comme tel, mais dans mes projets je code toujours objet et me base sur des frameworks.

Cependant le niveau initié est totalement justifié, un débutant ne sait pas comment utiliser HTTPS, les certificats SSL, de plus CURL est très mal documenté à mes yeux sur les options comme VERIFY PEER etc., il faut donc savoir déjà bien manipuler CURL sur les protocoles HTTP et HTTPS.

@LE_BRUNARD: Je veux un nabaztag T_T

Commentaire de le_brunard le 24/09/2009 17:59:13

Bon, ça y est , j'ai testé avec mon Nabaztag ! Ça marche d'enfer ! Encore merci.
Par contre, si j'en ai l'autorisation, j'aimerais bien publier ton code sur les forums des propriétaires de Nabaztag.

Commentaire de momouloud le 30/09/2009 14:30:13

bonjour,
j'ai le même problème que sitajony, j'ai vérifié et mon serveur n'est pas en safe_mode (phpinfo() m'indique safe_mode off off )
est-ce que l'erreur peut provenir d'autre part, ou alors y a t il un paramètre de php.ini à modifier ?

Commentaire de Teclis01 le 07/10/2009 15:58:20

La configuration n'a pas a augmenter la difficulté (d'ailleurs on recherche qqch de configurable simplement mais pas a plonger dans la technique en réutilisation).
Le niveau de difficulté est au niveau métier ou architecture, dans le cas présent c'est un script qu'on déroule, un one shot. Je trouve vraiment rien de compliqué débutant (allez intermédiaire) aurait suffit.

Mais bon soit...

Commentaire de prince418 le 14/10/2009 10:34:01

Hello,

un kit php est déjà fourni par sfr  pour ce type d'action

http://devzone.ateliersfr.fr/drupal/content/le-dev-kit-php

Commentaire de mafarette le 18/12/2009 19:09:14

bonjour a tous un petit détail vous avez un compte illimité SFR oui
ok mette cette ligne

http://www.sfr.fr/communiquer/messagerie/sfr-mobile/authentification/

votre n de tel
et votre code



et mon pas sfr-messagerie  ok le script fonctionne très bien en intern ou sur serveur extern

message reçu  

Texto envoyé !



bon passons au chose sérieuse
je cherche un programmeur php

pour création prog avec base de donnée
mon tel : 0148857225

0617454091
campus-descartes.net


Commentaire de mafarette le 31/01/2010 11:17:12

plus de probleme
<?php
/**
* Script d'envoi de textos depuis un compte SFR

*/



Define('AUTHENTIFICATION', 'http://www.sfr.fr/communiquer/messagerie/sfr-messagerie/authentification/');
Define('COOKIE_FILE','cookie.txt'); //Fichier COOKIE
Define('EMPTY_FILE',"emptyfile.txt"); //DOIT être un fichier vide
Define('USER_AGENT','Mozilla/5.0'); //User-agent
Define('LOGIN','000000000'); //Login de votre compte SFR (Votre numéro)
Define('PASSWORD','00000'); //Password de votre compte SFR



$tel = $_POST['$tel'];

$cible= $_POST['$cible'];
$ciblefin = $_POST['$ciblefin'];
$image =  "image1.jpg";
$message = "Message a envoyer";


if(send_sms($cible,$message,$image)) echo("sms ok au : $cible");
else echo("Impossible de trouver le token ou message trop long. Message non transmis. Mauvais logins ?");

/**
* Fonction d'envoi de sms
*
* @param int $cible Numéro de téléphone du destinataire
* @param int $message Message pour le destinataire. Supporte les accents. Jusqu'à 480 caractères.
* @return int 1 si succès 0 en cas d'échec.
*/
function send_sms($cible,$message)
{
//Encodage d
$message = utf8_decode($message);

$ch = curl_init();

// set url
curl_setopt($ch, CURLOPT_URL, AUTHENTIFICATION);
curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, USER_AGENT);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// $output contains the output string
$output = curl_exec($ch);

curl_close($ch);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.sfr.fr/cas/login?service=https://www.sfr.fr/j_spring_cas_security_check");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS,"target=&_eventId=&currentPage=&username=".LOGIN."&password=".PASSWORD);
curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$ret = curl_exec($ch);

curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/index.do");


$ret = curl_exec($ch);

if ($ret === FALSE) {
    die(curl_errno($ch));
}

preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);

if(!isset($out[1]))
{
return 0;
}

$token = $out[1];

$array = Array(
"CSRFToken" => $token,
"idMessage" => '',
"submitMethod" => 'web',
"todo" => '',
"boxId" => 'sent',
'galleryItem' => '-1',
'msisdns' => $cible,
'emails' => '',
'emoticones' => ':)',
'message' => $message,
'file' => '@'.realpath(EMPTY_FILE)
);

curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/submit.do");
curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
$ret = curl_exec($ch);

preg_match("!\"CSRFToken\" value=\"([0-9]*)!",$ret,$out);
$token = $out[1];

//Confirmation
$array = Array(
"CSRFToken" => $token,
"idMessage" => '',
"submitMethod" => 'web',
"todo" => '',
"boxId" => 'sent',
'emoticones' => ':)',
'mms' => 'false',
'message' => $message
);

curl_setopt($ch, CURLOPT_URL, "http://www.sfr.fr/web-messagerie/mc/envoyer-texto-mms/confirm.do");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
$ret = curl_exec($ch);

curl_close($ch);

if(strpos($ret,"Le Texto a &eacute;t&eacute; exp&eacute;di&eacute; avec succ&egrave;s&nbsp;!") === false) return 0;
else return 1;

return 1;
}
?>

<html>
<head>
<title>Destination 1</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<meta http-equiv="refresh" content="3; URL=http://localhost:8888/MMS/serveur/mms1.php">



<body>



<body bgcolor="#FFFFFF">
<table width="80%" border="0" cellspacing="0" cellpadding="0" height="370" align="center">
  <tr align="center">
    <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="6"></font></b></td>
  </tr>
</table>





</body>
</html>

Commentaire de ajeans le 18/05/2010 16:14:58

Bonjour,
Merci beaucoup pour ce script.
J'ai réussit a le faire fonctionner au mois de février et depuis ce temps, je ne t'avais pu utilisé.

J'ai voulu ré-utilisé ce code, mais il ne fonctionne plu. Est ce que le problème est le même chez vous ?

Cordialement.

Commentaire de Luxure le 25/06/2010 21:30:40

Bonjour,

Même problème, il semblerait qu'SFR ait changé de système de manière à bloquer ce genre d'utilisation afin que les gens souscrivent à leurs APIs ...
Il reste donc à trouver une alternative, ou un moyen de passer ce nouveau système :)

Commentaire de mafarette le 27/01/2011 22:38:24

nous y travaillons c'est un prob de cookies

Commentaire de debutante le 15/02/2012 15:44:28

Bonjour à tous,

Je suis contente de trouver cet exemple, car je vais essayer de m'en inspirer pour mon besoin perso, qui y ressemble un peu !

Je voudrais automatiser en php ces instructions :
- aller sur http://www.unsite.html/moncompte/index.php une première fois car à la première connexion de la journée, un pavé s'affiche demandant de cliquer pour accéder au site (il doit y avoir le dépôt d'un cookie, car d'un autre ordinateur avec la même IP ça recommence)
- aller sur http://www.unsite.html/moncompte/index.php une seconde fois pour y entrer mon identifiant et mon mot de passe
- recevoir et mémoriser la page renvoyée une fois connectée
- aller sur http://www.unsite.html/moncompte/logout.php pour me déconnecter de mon compte.
- traiter les informations mémorisées

J'ai essayé de le faire en javascript à partir d'un parent pour gérer une frame ou tout autre contenant, c'est impossible pour une faille de sécurité xxs ou xss (je ne sais plus).

Je reviendrai vous donner le fruits de mes adaptations.
Si vous avez des suggestions, elle seront bienvenues, évidemment ;-)

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales