begin process at 2012 05 30 15:59:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Web 2.0

 > 

Autre

 > 

se loguer sur facebook sans passer par facebook (code php)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

se loguer sur facebook sans passer par facebook (code php)

mardi 18 août 2009 à 14:36:54 | se loguer sur facebook sans passer par facebook (code php)

fanProg


Bonjour tout le monde,
En fait je suis entrain de developper une application web.
Celle-ci doit permettre à ses utilisateurs de mettre à jour leur statut facebook sans passer par facebook.com, il suffit juste qu'il indique leur email et leu password.
Mais là je suis coincé :(
je sais pas si quelqu'un aurait une idée là-dessus ou un bout de code, ça me fera très plaisir!!!

Merci d'avance pour votre aide,
Cordialement

mardi 18 août 2009 à 18:37:13 | Re : se loguer sur facebook sans passer par facebook (code php)

kohntark

Membre Club


Salut,

Regarde du côté de l'API facebook connect (http://developers.facebook.com/connect.php) il y a des exemples de code.

Sinon il faudra te tourner vers une analyse du code source des pages et simuler une connexion via curl ou les sockets.

Cordialement,


Kohntark -

mardi 18 août 2009 à 18:52:15 | Re : se loguer sur facebook sans passer par facebook (code php)

fanProg


Merci beaucoup pour votre reponse Kohntark, c gentil.
En fait, j'ai déjà été sur le lien que vous m'avez donné mais j'avance pas trop avec...

Par contre, avec mes recherches j'ai lu effectivement quelque part, que c'est plus facile avec CURL que vous venez d'evoquer dans votre msg, mais que je connais pas encore, donc je sais pas trop si vous pouvez me guider sur ce chemin, je vais essayer de m'y mettre.

Merci d'avance pour votre reponse,

Cordialement,
fanProg

mardi 18 août 2009 à 19:16:41 | Re : se loguer sur facebook sans passer par facebook (code php)

kohntark

Membre Club

Je ne connais pas l'API Facebook, mais j'imagine qu'il sera plus simple de l'utiliser que de passer par curl.
Sans compter la flexibilité, la pérennité et la sécurité.

Cela étant il doit être assez simple de s'y connecter via curl, mais ça risque de te demander plus de travail au final. Il te faudra également maitriser les expressions régulières pour pouvoir parser les pages retournées.

Je ne saurai que trop te conseiller de te tourner vers la doc qui est relativement complète et de revenir poser tes éventuelles questions.

Cordialement,



Kohntark -

mercredi 19 août 2009 à 10:57:34 | Re : se loguer sur facebook sans passer par facebook (code php)

fanProg


Encore merci Kohntark,

Au fait par rapport à l'API Facebook, je l'ai déjà implémenté, sauf que lorsque je lance l'application, on me fait passer sur une page d'authentification, puis après tout se passe bien, ce que je voudrais c'est que la connexion se passe automatiquement par indication de l'adresse mail et du password comme variables dans le code sans passer par une page où il faut les saisir.

Maintenant ce que je voudrais savoir : est-il possible de mixer CURL avec l'API pour remedier au problème? car seulement avec l'API j'ai pas pu me debarasser de cette page d'authentification :(

Merci d'avance pour votre reponse,

Cordialement,

fanProg

mercredi 19 août 2009 à 14:21:23 | Re : se loguer sur facebook sans passer par facebook (code php)

kohntark

Membre Club


Ne connaissant pas l'API je suis un peu sec pour te répondre , mais partant du principe qu'avec curl (et plus généralement les sockets) tu peux simuler n'importe quelle navigation "humaine" la réponse est sans aucun doute : oui, c'est possible.
Malgré mon niveau très très moyen j'ai déjà codé plusieurs robots sans jamais me heurter à un problème insoluble, y compris sur des sites qui mettent en place des mesures de protection et de sécurisation (pour ne pas me faire incendier : il n'y a là aucun piratage, aucun "pompage" ou vol d'informations, je ne fais qu'automatiser ce qu'il serait possible de faire manuellement) ... alors facebook, pourquoi pas.

Par contre, et pour argumenter un peu mon dernier post à propos de l'utilisation de curl :
- pérennité :
le moindre changement de l'API (ou du site) peut rendre ton code inopérant :
pour simuler une navigation "humaine" tu as besoin de parser à l'aide de regex les pages renvoyées afin d'identifier certaines données nécessaires à cette navigation; une virgule de plus, un tag HTML en moins et plus rien ne fonctionne. Facebook étant un site au contenu très dynamique (et un peu bordelique aussi) c'est risqué.
En utilisant l'API tu peux être sur que cela ne changera pas du jour au lendemain (du moins c'est bien moins fréquent)

- sécurité :
Tu comptes demander les log / pass facebook à tes utilisateurs ou ai je loupé quelque chose ?
Si c'est le cas il faut une sacrée confiance en ton site pour les fournir, perso je ne le ferai pas.

- flexibilité :
En utilisant curl tu limites les possibilités qui te sont offertes, ou alors il faut tout réimplémenter, mais bonjour l'arrachage de cheveux. Pour l'heure tu ne souhaites que modifier le statut ... mais demain ?

Bref, sans trop m'être penché sur la question j'utiliserai l'API, puisqu'elle existe (c'est une chance, sisi ) et qu'elle offre des possibilités, à première vue, fort sympas. Et puis l'interface est bien foutue (renseignement automatiquement des champs login/pass, ...)

Si tu souhaites continuer avec curl n'hésites pas à poster ton code, ça sera intéressant.

Cordialement



Kohntark -

mercredi 19 août 2009 à 16:11:53 | Re : se loguer sur facebook sans passer par facebook (code php)

fanProg


Une fois de plus, merci Kohntark pour l'effort fourni pour me repondre.

Je suis tout à fait d'accord avec vous concernant l'API, mais comme je vous ai déjà dit, je l'ai essayé et ça marche parfaitement sauf que ça ne fait pas ce que je veux :(
car avant d'acceder à l'application, le code de l'API me fait passer par une page de saisie de login/pass ... eh bien c'est ce que je voudrais rendre automatique !

Après avoir pris connaissance de CURL grâce à vous, et vu que je suis fan de la programmation, j'ai entamé des recherches qui se sont soldées par ce bout de code qui repond à mon sens à ce que je veux, je l'ai toute suite testé en fournissant des valeurs correctes aux variables mais ça m'affiche
cette erreur: Undefined offset : 1... et ça m'indique la ligne où se trouve form_id[1], avez-vous une idée??? ça me fera très plaisir !!!!!
Dans l'attente de votre reponse,
merci d'avance !
Cordialement,
fanProg

voici le code :


$status = 'YOUR_STATUS';
$first_name = 'YOUR_FIRST_NAME';
$login_email = 'YOUR_LOGIN_EMAIL';
$login_pass = 'YOUR_PASSWORD';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://login.facebook.com/login.php?m&next=http%3A%2F%2Fm.facebook.com%2Fhome.php');
curl_setopt($ch, CURLOPT_POSTFIELDS,'email='.urlencode($login_email).'&pass='.urlencode($login_pass).'&login=Login');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3");
curl_exec($ch);

curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, 'http://m.facebook.com/home.php');
$page = curl_exec($ch);

curl_setopt($ch, CURLOPT_POST, 1);
preg_match('/name="post_form_id" value="(.*)" \/>'.ucfirst($first_name).'/', $page, $form_id);
curl_setopt($ch, CURLOPT_POSTFIELDS,'post_form_id='.$form_id[1].'&status='.urlencode($status).'&update=Update');
curl_setopt($ch, CURLOPT_URL, 'http://m.facebook.com/home.php');
curl_exec($ch);
?>

samedi 22 août 2009 à 09:32:44 | Re : se loguer sur facebook sans passer par facebook (code php)

kohntark

Membre Club

Salut FanProg,

Je n'ai pas eu trop le temps de me pencher sur ton pb, j'avais juste fait un essai de ton code et constaté la même erreur, qui semble venir de la regex "preg_match('/name="post_form_id" value="(.*)" \/>'.ucfirst($first_name).'/', $page, $form_id);" Il faudrait analyser le code retourné par facebook et contrôler ce '/name="post_form_id" value="(.*)" \/>'

Où en es tu à présent ?


Cordialement,



Kohntark -

lundi 24 août 2009 à 18:08:41 | Re : se loguer sur facebook sans passer par facebook (code php)

fanProg


Salut Kohntark,

Au fait, le problème a été resolu.

En effet, il fallait juste créer un formulaire et passer le nom de celui-ci dans la regex "preg_match".

Je ne saurai terminer sans vous remercier une fois de plus pour vos feed-back qui m'ont été d'une grande utilité!

Cordialement,
fanProg

vendredi 4 septembre 2009 à 20:39:59 | Re : se loguer sur facebook sans passer par facebook (code php)

DAMIAN0

Bonsoir,
Comme toi fanProg je tente de faire une connexion a facebook de manière auto, j'ai tester ton code.
j'ai modifier la ligne:
curl_setopt($ch, CURLOPT_URL, 'https://login.facebook.com/login.php?m&next=http%3A%2F%2Fm.facebook.com%2Fhome.php');
par
curl_setopt($ch, CURLOPT_URL, 'https://login.facebook.com/login.php?login_attempt=1');

Et j'obtiens Notice: Undefined offset: 1 in ...
tu parle de créer un formulaire dans la regex "preg_match".. je ne saisi pas vraiment ce qu'il faut faire, pourrais tu m'éclairer s'il te plait

Merci d'avance
Salutations


1 2

Cette discussion est classée dans : code, php, passer, loguer, facebook


Répondre à ce message

Sujets en rapport avec ce message

création une application facebook avec l'api facebook en php [ par lasscam ] Bonjour tout le monde, en fait je suis entrain de créer ma prémière application facebook, pour ce faire je me sers de son api dont le code est en php. Problème URL en PHP suite à un bouton [ par lefoudebeutre ] Bonjour à tous et à toutes, j'ai un souci sur un code fourni par Facebook, ce code sert à implanter le bouton "J'aime" de Facebook sur n'importe que connexion compte facebook avec prestashop [ par mothe ] Bonjour, Je suis actuellement entrain de réaliser un site e-commerce intégré dans facebook avec prestashop, mais je suis bloqué. j'ai réalisé un mod Application facebook : Publiez sur un mur [ par quinton75 ] Bonjour, [^^clinoeil1][^^clinoeil1] Je souhaite développer une application qui donne la possibilité au visiteur de publier une des photos de la f Lire/traduire du code php depuis la base de donnée [ par bruce207 ] Bonjour, j'ai un code en php qui s'execute lorsque je l'insère directement dans la page php (il sert à affiché un diaporama) et il s'affiche alors sur Un code pour temps d'attente ! [ par 15miuteslive ] Bonjour à tous ! Voila, cela fait maintenant plusieurs heures que je cherche en vain un code PHP. Vous allez me dire : "Quoi comme code ?" Voila ce q Code source PHP [ par mostafaboukhar ] Salut tout le monde j'ai besion du code php qui calcule la distance en 2 aéroports merci Perte de session avec ie ??? [ par gfpl ] Bon voila le souci je peut le tourner comme je veut mais je ne trouve pas la solution .... j'essaie en vain mais non... la session marche avec chrome code php html [ par ibnLaye ] Slut a tous je suis un grand débutant en developpement web et j'ai un projet sur le quel je dois presenter un fomulaire d'enregistremnt avec une list GLPI interface [ par marwamaritta ] Bonjour, je suis en train de faire une application d'audit avec un code en php; je veux créer une interface en GLPI à l'aide du code php; mon probl


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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 : 1,186 sec (3)

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