Accord à l'amiable entre PHP et Perl ?...
hugo
-
casa -
casa -
Bonsoir,
Je créé un site Web. Toutes les pages sont écrites en HTML/PHP, à l'exception d'une section qui est constituée de scripts PERL.
Or l'accès à certaines parties du site est restreint à des utilisateurs enregistrés sous un login et un mot de passe.
Pour les pages écrites en PHP, pas de problème, j'utilise une bête variable de session 'connecte' pour déterminer si j'affiche le contenu normal de la page ou un "Vous devez être connecté pour visualiser cette page".
Problème : comment puis-je déterminer dans mes scripts perl si l'utilisateur est connecté ou non ?
Y a-t-il un moyen de récupérer la variable de session PHP, ou sinon un substitut ?
Je précise que je tiens à éviter au maximum la solution extrême qui consiste à réécrire tout le code PHP en Perl, ou vice-versa, étant donné la somme de travail que cela représenterait et de plus, je n'ai pas trop le temps pour m' "amuser" à faire cela... ^^;;
Je créé un site Web. Toutes les pages sont écrites en HTML/PHP, à l'exception d'une section qui est constituée de scripts PERL.
Or l'accès à certaines parties du site est restreint à des utilisateurs enregistrés sous un login et un mot de passe.
Pour les pages écrites en PHP, pas de problème, j'utilise une bête variable de session 'connecte' pour déterminer si j'affiche le contenu normal de la page ou un "Vous devez être connecté pour visualiser cette page".
Problème : comment puis-je déterminer dans mes scripts perl si l'utilisateur est connecté ou non ?
Y a-t-il un moyen de récupérer la variable de session PHP, ou sinon un substitut ?
Je précise que je tiens à éviter au maximum la solution extrême qui consiste à réécrire tout le code PHP en Perl, ou vice-versa, étant donné la somme de travail que cela représenterait et de plus, je n'ai pas trop le temps pour m' "amuser" à faire cela... ^^;;
A voir également:
- Accord à l'amiable entre PHP et Perl ?...
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Photo de moi sur facebook sans mon accord ✓ - Forum Facebook
- Tv lg accord utilisateur - Forum Téléviseurs
- Retour a la ligne php - Forum Webmastering
4 réponses
Re-bonsoir
Il semble que j'aie trouvé mon bonheur :) :
-> http://dev.nexen.net/news/gen.php3/2002/07/10/821,0,1,0,0.html
-> http://search.cpan.org/dist/PHP-Session/
Quelqu'un a déjà testé ?
Il semble que j'aie trouvé mon bonheur :) :
-> http://dev.nexen.net/news/gen.php3/2002/07/10/821,0,1,0,0.html
-> http://search.cpan.org/dist/PHP-Session/
Quelqu'un a déjà testé ?
Re-bonsoir :)
Permettez-moi un
Raaaaaaaarrrrrrrrrrrggghhhhhhh
justifié ^^;
La fameuse librairie est en effet installée, mais j'ai beau éplucher sa documentation ou m'essayer à des recherches (infructueuses) sur le Web, rien n'y fait : je n'arrive pas à savoir comment on récupère une session PHP.
Tout ce que j'arrive à faire actuellement, c'est créer une nouvelle session, mais ça, je m'en fiche pas mal, vu que mon but, c'est de récupérer une variable de session précédemment créé ^^;
Pourtant, je suis certain d'avoir la solution sous les yeux, dans cette foutue doc -___- Je me dis que la réponse est peut-être dans l'autre classe de la libraire, à savoir PHP::Session::Serializer::PHP...
D'où une question toute bête qui en découle : c'est quoi un serializer ? ^^;
A titre indicatif, voici mon code actuellement; il fonctionne, mais il ne renvoie pas la réponse que je voudrais ^^;;
Permettez-moi un
Raaaaaaaarrrrrrrrrrrggghhhhhhh
justifié ^^;
La fameuse librairie est en effet installée, mais j'ai beau éplucher sa documentation ou m'essayer à des recherches (infructueuses) sur le Web, rien n'y fait : je n'arrive pas à savoir comment on récupère une session PHP.
Tout ce que j'arrive à faire actuellement, c'est créer une nouvelle session, mais ça, je m'en fiche pas mal, vu que mon but, c'est de récupérer une variable de session précédemment créé ^^;
Pourtant, je suis certain d'avoir la solution sous les yeux, dans cette foutue doc -___- Je me dis que la réponse est peut-être dans l'autre classe de la libraire, à savoir PHP::Session::Serializer::PHP...
D'où une question toute bête qui en découle : c'est quoi un serializer ? ^^;
A titre indicatif, voici mon code actuellement; il fonctionne, mais il ne renvoie pas la réponse que je voudrais ^^;;
$session = PHP::Session->new($new_sid, { create => 1 }); # je veux récupérer la variable de session "connecte" que j'ai créé dans un fichier PHP précédemment. if ( $session->is_registered('connecte') ) { print "l'utilisateur est connecté :)<P>"; # la réponse que je serais super-content d'avoir ^^ } else { print "l'utilisateur n'est PAS connecté :("; # la réponse que les dures réalités de la vie et de l'informatique me fournissent ^^; }
YEEESSSSSSSSSSSSSS !!!!! ^_____________^
J'ai fini par trouver la solution qui - évidemment - coulait de source. 'fin bon, c'est l'informatique tout craché, ça : galérer des heures et des heures pour un truc tout con ^^
Dans mon immense mansuétude, je vous donne la solution :P :
il suffisait tout simplement :
- dans mon fichier PHP, de récupérer l'identifiant de la session courante
et de créer un champ caché contenant la valeur de cet identifiant dans mon formulaire
- dans le fichier PERL, plus qu'à chopper ce champ caché :) :
Et vala !
J'ai fini par trouver la solution qui - évidemment - coulait de source. 'fin bon, c'est l'informatique tout craché, ça : galérer des heures et des heures pour un truc tout con ^^
Dans mon immense mansuétude, je vous donne la solution :P :
il suffisait tout simplement :
- dans mon fichier PHP, de récupérer l'identifiant de la session courante
$id_session = session_id();
et de créer un champ caché contenant la valeur de cet identifiant dans mon formulaire
print("<INPUT type=\"hidden\" name=\"id_session\" value=".$id_session.">");
- dans le fichier PERL, plus qu'à chopper ce champ caché :) :
#! /usr/bin/perl use PHP::Session; use CGI; (...) my $req = new CGI; my $id_session = $req->param('id_session'); $session = PHP::Session->new($id_session, { create => 1 }); # cas ou l'utilisateur est connecté if ( $session->is_registered('connecte') ) { print "zêtes connecté"; } else { print "zêtes pas connecté, ouh le vilain"; }
Et vala !