Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/06/2007, 10h02   #1
Membre habitué
 
Avatar de tintin72
 
Inscription : septembre 2003
Messages : 595
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 595
Points : 123
Points : 123
Par défaut [Sécurité] identifier la page appelante ?

Bonjour,

J'ai 3 pages php qui appellent la même page php
mais chacune pour des actions diverses, ex:

appel_1.php //pour identifier un login
appel_2.php //pour entrer des données dans une bdd
appel_3.php //pour afficher des données via une bdd

reponse.php //page appelée


Comment faire pour que reponse.php sache quelle page l'a appelée (et agir en conséquence) ?

Merci d'avance
tintin72 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 11h14   #2
Membre émérite
 
Avatar de sharrascript
 
Homme Franck
Développeur Web indépendant
Inscription : avril 2007
Messages : 678
Détails du profil
Informations personnelles :
Nom : Homme Franck
Âge : 31
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web indépendant

Informations forums :
Inscription : avril 2007
Messages : 678
Points : 900
Points : 900
bonjour,

Il y a plusieurs solutions, mais la première qui me vient à l'esprit est d'utiliser le $_GET.

Dans tes pages qui appellerons reponse.php tu rajoute sur le lien

sur appel_1.php //pour identifier un login
le lien sera par exemple <a href='reponse.php?var=1'>reponse</a>

sur appel_2.php //pour entrer des données dans une bdd
le lien sera par exemple <a href='reponse.php?var=2'>reponse</a>

sur appel_3.php //pour afficher des données via une bdd
le lien sera par exemple <a href='reponse.php?var=3'>reponse</a>

et sur la page reponse.php //page appelée
tu récupère la variable ainsi $_GET['var'] et tu fais tes conditions celon ce qu'elle contiend.

Voilà l'idée.

++
__________________
LudiKreation Pour un web ludique et son Blog | CapRumbo pour un peu d'évasion | ChaOdisiaque Club Passion Rôliste |SierrElben le Jeu de rôle
sharrascript est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 11h23   #3
Membre habitué
 
Avatar de tintin72
 
Inscription : septembre 2003
Messages : 595
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 595
Points : 123
Points : 123
Merci beaucoup pour ta réponse

En effet la méthode GET est intérressante.
Le pb c'est que les variables sont passées via la barre d'adresse, et ça
m'arrange pas trop au niveau sécurité pour les login et les mots de passe.
j'ai vu qu'il y avait aussi la variable $_SERVER['HTTP_REFERER'] qui serait plus intérressante pour moi. Mais j'ai lu qu'elle n'était pas fiable à 100%.
Donc je ne sais pas quoi faire
Peut être que la méthode la plus fiable serait finalement de faire une page pour chaque appel (même si ça fait du code redondant) ?
Quelqu'un aurait une idée ?
tintin72 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 12h01   #4
Membre émérite
 
Avatar de sharrascript
 
Homme Franck
Développeur Web indépendant
Inscription : avril 2007
Messages : 678
Détails du profil
Informations personnelles :
Nom : Homme Franck
Âge : 31
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web indépendant

Informations forums :
Inscription : avril 2007
Messages : 678
Points : 900
Points : 900
Re,

Non, mais pour tes mots de passe etc... utilise les sessions. Ensuite, le $_GET pour les choses qui ne risque rien, comme le 1, 2, 3 du dessus.

Si tu veux en savoir + sur les sessions n'hésite pas

++
__________________
LudiKreation Pour un web ludique et son Blog | CapRumbo pour un peu d'évasion | ChaOdisiaque Club Passion Rôliste |SierrElben le Jeu de rôle
sharrascript est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 12h07   #5
Membre habitué
 
Avatar de tintin72
 
Inscription : septembre 2003
Messages : 595
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 595
Points : 123
Points : 123
Citation:
Si tu veux en savoir + sur les sessions n'hésite pas
Ok
C'est quoi exactement des sessions ?
tintin72 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 12h31   #6
Membre émérite
 
Avatar de sharrascript
 
Homme Franck
Développeur Web indépendant
Inscription : avril 2007
Messages : 678
Détails du profil
Informations personnelles :
Nom : Homme Franck
Âge : 31
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web indépendant

Informations forums :
Inscription : avril 2007
Messages : 678
Points : 900
Points : 900
Deux liens interressants:

http://www.php.net/manual/fr/ref.session.php
http://cyberzoide.developpez.com/php4/faqsession/

Si tu ne pige pas tout, n'hésite pas à refaire signe^^

++
__________________
LudiKreation Pour un web ludique et son Blog | CapRumbo pour un peu d'évasion | ChaOdisiaque Club Passion Rôliste |SierrElben le Jeu de rôle
sharrascript est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 16h23   #7
Membre habitué
 
Avatar de tintin72
 
Inscription : septembre 2003
Messages : 595
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 595
Points : 123
Points : 123
merci pour les liens
Effectivement les sessions ont l'air bien pratique et je pense que je vais pas tarder à m'y interesser
En ce qui concerne mon pb, je vais tout simplement faire passer un id via une variable caché (hidden).
tintin72 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 22h06   #8
Membre émérite
 
Avatar de ozzmax
 
Inscription : novembre 2005
Messages : 986
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : novembre 2005
Messages : 986
Points : 863
Points : 863
Envoyer un message via MSN à ozzmax
Citation:
Envoyé par tintin72
merci pour les liens
Effectivement les sessions ont l'air bien pratique et je pense que je vais pas tarder à m'y interesser
En ce qui concerne mon pb, je vais tout simplement faire passer un id via une variable caché (hidden).
Alors tant qu'a faire cela
utilise les sessions
Une petite astuce:
Tu te garde une variable de session ex: $_session['provenance']
Que tu donne une valeur à chaque fois qu'une page est loadé correctement
ensuite tu peux valider cette variable dans les autres page qui y refère
dans ton cas
tu valides un peu avec le meme principe suggéré par sharrascript
sauf qu'où ca devient intéressant est lorsqu'il y a interaction avec la bdd
Si tu veux éviter qu'un update ou insert se fasse 2 fois, tu valides la variable en conséquence un peu comme ceci:

Code :
1
2
3
4
5
6
7
 
if(isset($_session['provenance']) && $_session['provenance'] == "appel1.php"){
//traitement
}
else{
//redirection vers home.php avec un message
}
__________________
La perfection n'est pas un but, l'amélioration constante devrait l'être!
La position des Développeurs de developpez avec les explications
ozzmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2007, 23h30   #9
Membre expérimenté
 
Inscription : janvier 2007
Messages : 439
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 439
Points : 519
Points : 519
Bonsoir

Attention sur le lien cyberzoide pour les sessions il ya quelque erreur du fait que le document n'est plus a jour depuis 2003

Citation:
Les fonctions session_register(), session_unregister(), session_is_registered() et
session_unset()
Vous pouvez trouver de nombreux tutoriels utilisant les fonctions session_register(), session_unregister(),
session_is_registered().
Il ne faut plus utiliser ces fonctions. Elles appartiennent à d'anciennes versions de PHP et sont désormais
dépréciées. Elles ne doivent plus être utilisées !
De même, la fonction session_unset() qui, bien qu'elle ne soit pas officiellement dépréciée, est très fortement
déconseillée car elle suit la même optique que les trois précédentes...
Celon le cour de swoog qui est fort interessant est qui d'apres ce que j'en ai lu est au norme php5


http://php.developpez.com/cours/sessions/


Cordialement
spawntux est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h30.


 
 
 
 
Partenaires

Hébergement Web