24 12 2001 à 17:58


salut tout le monde et joyeux noël.
j'aurais une question assez précise pour les phpetteurs (copyright Gomez ^^)

Je suis en train de faire un système de login avec cookies en php.
La page principale contient une iframe dans laquelle se trouve le formulaire de login.
Le formulaire est envoyé à la même page que celle où se trouve le formulaire ( donc formulaire est en action="" ).
Lorsque la page compare les variables qu'on lui envoie à celles de la ddb, et qu'elles correspondent, 3 fonctions sont lancées :
1 - créations de cookies.
2 - signalement au journal des évènements des admins du login du visiteur.
3 - header pour rediriger vers une page membres (avec admin de fiche perso etc.)

Là, jai plusieurs problèmes.

Tout d'abord, la création des cookies. J'ai lu quelque part que si je ne mettais en variable que le nom et la valeur du cookie, celui-ci serait dispo jusqu'à ce que le navigateur soit fermé.
J'aurais bien aimé plus de précision : par exemple, lors d'une pop-up, puis-je utiliser encore le cookie ?

Ensuite, la fonction header n'as pas l'air de fonctionner.
De toute façon, il faudrait qu'elle redirige non pas la iframe vers la page membres, mais la page toute entière. Et je me demande bien comment faire ça

La fonction qui concerne la mise à jour du journal des évènement fonctionne, c'est la preuve que le script arrive jusque là sans problèmes.


Si quelqu'un à des réponses, ce serait sympa.
(oui, je sais, je suis le seul sur le net au réveillon mais si il faut, j'attendrai après noël pour avoir une réponse ;))

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  25 12 2001 à 23:56


J'ai pas encore assez de connaissances en PHP pr te répondre...
J'ai bien demandé à Papa Noël de me filer la connaissance suprême, mais y m'a oublié, le radin...
Néammoins, j'ai un petit truc à te demander. Tu dis que tu utilises une iframe... OK. Le site est censé n'être vu que sur MSIE ? Parce que les iframes ne fonctionnent pas sous Netscape me semble-t-il...
Si tu arrives à les utiliser sous Netscape, je suis preneur, car perso, ca merde...
A moins peut-etre Netscape 6 ??? (pas encore testé...)

Bon courage, j'espère qu'un Dieu PHPetteur pourra t'aider.

dead (mickey - )
43 ans (Grenoble)
deadycool@ifrance.com | 134973723
http://www.2tsig.fr.st

L'esprit humain est comme un parapluie, il fonctionne mieux quand il est ouvert.





  26 12 2001 à 00:48


ah,
je savais pas qu'il y avait des pbs avec netscape pour les iframes (je m'en doutait quand même, c'est pas croyable le nombre de ***** qu'on peut avoir avec).
De toute façon, les visiteurs qui ont netscape représentent une très faible partie des visiteurs et ils sont invités à changer de navigateur si les iframe ne sont pas affichées.
wake up, members of WAN ( http://www.hypercall.de ) !!!

lol, ceux qui me connaissent savent à quel point je suis têtu lorsqu'on me parle de netscape ;)
Merci quand même pour l'info.


Pour revenir à mon pb, je n'ai finalement pas besoin d'afficher la page de redirection dans la page toute entière, mais bien dans la iframe.
Donc la redirection ne devrait pas poser de problèmes, mais c'est pas le cas.

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  26 12 2001 à 01:05


Ciao,

Hollalala, ca a l'air complique mais ca peut etre tres simple a la fois.
Alors, pour le cookie, tu peut definir plusieurs elements dans un meme cookie. Pour savoir le nb max demander a gwan qui en rafolle.
Ensuite, dans ce cookie. Non seulement tu peut lui attribuer une valeur ($nom=toto) mais en plus tu peut attribuer une date de peremption (bha vi un cookie c'est perrissable).

ex en Php:
setcookie( "freakersite[name]", "$name", time()+604800, "/");
setcookie( "freakersite[mail]", "$mail", time()+604800, "/");

la tu vois j'ai le nom du cookie: freakersite
le nom de la variable: name; sa valeur: $name
Un autre variable: mail; sa valeur $mail
la date limite de consomation: time()+604800
et le path: /

Dans le cas ci dessus le cookie est valable tant que la date n'est pas franchie. Sans ce parametre le cookie est detruit a la fermeture du browser. Donc, si tu veut l'appeler par exemple d'une autre page:

if ( isset( $freakersite) ) { print $freakersite[name]; }

Maintenant, petit detail technique pour le header et le setcookie. Ils devront s'effectuer avant le moindre affichage sur ta page. Soit en php avec un print ou un echo, comme un simple bout de tag comme ce <br> malvenu.

Heu maintenant le header hors du frame... Bha je sais pas mais perso j'ai une page login.php. Et si le login est correct de faire ton header normallement.

header("Location: maptitepagecherie.php");

Sinon les iframes fonctionnent tres bien a partir de NS6. Poweeeerrrr NS





cob (guest star - )
46 ans (toulouse)
respecto@free.fr
http://www.greybox.tk

cet espace est à vendre ! mise à prix à 147€





  26 12 2001 à 03:12


merci jacob.
le pb, c'est que tout ce que tu m'as dit là, je le savais déjà.
Ya que la précision concernant le cookie lorsqu'on lui met pas de date d'expiration dont je n'étais pas sur.
En fait, je veux justement que le cookie soit détruit lorsque l'utilisateur quitte le browser puisque le site sera surtout visité dans une salle de jeu en réseau / cyber-café.

Pour header, j'ai tout fait comme tu me le conseil, c'est à dire que je n'envoie aucun code sous la forme html avant le header de façon à ce qu'il soit bien passé dans l'entête http.
Mais ça change rien, jme retrouve avec une page blanche
Je comprends pas.
Je vais essayer en changant qqs trucs pour voir où ça bloque et je te/vous tiens au courant.

A+

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  26 12 2001 à 09:39


Pour que le cookie soit détruit à la fermeture du browser, il faut simplement spécifier dans la fonction setcookie le nom du cookie ainsi que sa valeur :
setcookie(" freakersite[name]" , $name );
et là tu obtiens un cookie qui est détruit quand l'utilisateur ferme le navigateur.

Concernant le header, verifie que dans chemin de ton fichier php est correct ( à mon avis, il l'est mais bon), sinon donne nous un aperçu de ton code du header.

a+

niko (admin. exilé fanatique - )
44 ans (Reims)
niko@piregwan.com
http://summerefresh.piregwan.com

cet espace est à vendre ! mise à prix à 335€





  26 12 2001 à 11:39


Voilà la source :
http://www.netplayergames.com/login.phptest

En gros, au début le script teste ce qu'il va devoir faire :
si il ne détecte pas de variable ni de cookies, il affiche le formulaire.
si il recoit des variables : soit il affiche que le pass et le login sont mauvais, soit il fait le login avec créations des cookies, MAJ du journal des évenements et redirection.
si il détecte que des cookies sont déjà présents, il fait la redirection tout de suite.

c'est du code de tacheron, mais j'suis encore un piti débutant ;)

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  26 12 2001 à 13:42


OUAIS !!!!!!!! YEEPEEE !
J'ai trouvé ce qui faisait foirer le header.
en fait, au début du scrip, ya un include pour obtenir les infos de connection à la db, et le fichier php mit en include avait une ligne de trop avant la balise php.
Voilou.
A part ça, les cookies fonctionnent très bien.
Merci pour votre aide

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  27 12 2001 à 13:48


salut freaker

tout marche au poil ou il reste des points obscures pour ta procédure de login ?

piregwan (agent mad fanatique lvl 1 - )
48 ans (chamb�ry, 73)
krakoukas@piregwan-genesis.com | 91327470
http://www.piregwan-genesis.com

" s'il vous plait mademoiselle, j'aurais voulu prendre une leçon particulière avec anne laurencin " JCD





  27 12 2001 à 15:25


merci de proposer ton aide gwan, mais tout fonctionne parfaitement en ce qui concerne le login
J'ai plus qu'une dizaine de pages à faire et le site sera finit. ^^

En fait, les cookies, c'est 100 fois plus pratique que ce que j'utilisais avant.
C'est finit, le temps des fonctions qui passent en GET l'heure sous forme time() pour controler que le lien a bien été utilisé dans les 10 dernières minutes

ahh tiens, pendant que je vous êtes là, je cherche une fonction php (sans js donc) pour récupérer la résolution d'écran du visiteur.
C'est pour ne pas afficher les barres de défilement si le visiteur a au moins du 1024x768. (en glissant un petit scroll=no dans le body)
Au pire, je peux utiliser une fonction js sur la premiere page et passer la variable dans un cookie mais il doit y avoir plus simple.

A+

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€





  27 12 2001 à 16:40


le langage PHP est server-side or ce que tu demande c'est de récuperer la résolution du client (client-side) donc cela est impossible pour faire ça seulement qu'en PHP.

La solution est de d'abord faire la detection de la résolution du client, rediriger le client suivant la résolution qu'il possede que tu lui passe dans l'url
ex :
<script>
document.location="resolution.php3?res="+res_clien t;
</script>

Ensuite cette variable Javascript va pouvoir être utilisé dans le script resolution.php3 en l'appelant de cette façon $res, tu vas récuperé ainsi la résolution de ton client et traiter les differents cas suivant les résolutions disponibles et tu redirige ensuite vers la bonne page avec la résolution qui va bien. ;)

J'espere avoir été clair.



niko (admin. exilé fanatique - )
44 ans (Reims)
niko@piregwan.com
http://summerefresh.piregwan.com

cet espace est à vendre ! mise à prix à 335€





  27 12 2001 à 16:55


Même que moi et ben je donne le script au monsieur FREAKER
Un fichier index.html qui redirigera l'utilisateur :

<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
function trimballer_resolution_client()
{
var taille; //déclaration des variables
var url;
taille = screen.width; //détection de largeur d'écran utilisateur
url="index.php3?taille="+(taille); //passage de la taille en param
window.location=url; // redirection utilisateur avec $taillle en param.
}
</script>
</head>
<body onload="trimballer_resolution_client()">
</body>
</html>

////////////////////////////////////////////////// ////////////////////////////////////////////////// ///////////

ton fichier index.php3 :

<html>
<head>
<title> Son fichier index.php3 au freaker </title>
</head>
<body>
<? echo ("$taille"); // amuse-toi avec la variable maintenant.... ?>
</body>
</html>

benzor (admin fanatique lvl 1 - )
46 ans (Chambéry)
ben@piregwan.com
http://www.benzor.com

On a toujours tort d'essayer d'avoir raison devant des gens qui ont toutes les bonnes raisons de croire qu'ils n'ont pas tort. Coluche





  27 12 2001 à 17:06


yo Ben,
je suis un warrior moi maintenant alors si tu veux pas tater de ma hache il va falloir se calmer, hien tu veux pas que je refasse un remake de connard le babar avec ta tête, hein ?? tu voudrais pas quand même hihi

niko (admin. exilé fanatique - )
44 ans (Reims)
niko@piregwan.com
http://summerefresh.piregwan.com

cet espace est à vendre ! mise à prix à 335€





  27 12 2001 à 17:13


<?
    if ($taille> 1024)
    {
        echo" <body scroll=\"no\"> ";
    }
    else
    {
        echo" <body> ";
    }
?>
mouark c mieux comme ca

benzor (admin fanatique lvl 1 - )
46 ans (Chambéry)
ben@piregwan.com
http://www.benzor.com

On a toujours tort d'essayer d'avoir raison devant des gens qui ont toutes les bonnes raisons de croire qu'ils n'ont pas tort. Coluche





  27 12 2001 à 17:34


lol
c'est cool, on se bat pour m'aider ici ^^
merci à vous deux (héhé, pas de jaloux )

dommage tout de même que le php fasse pas tout ;)
ouaip, en fait, jvais utiliser le js sur la première page et créer un cookie avec la résolution.

Ca me permettra de trimbaler (lol le nom de la fonction ben ) la variable sur tout le site !!

... et pour l'instant, j'ai que 5 cookies utilisés ... autant profiter !!

-FREAKER- (membre - )
40 ans (Lille)
freaker3d@hotmail.com | 85570231
http://www.freaker.fr.st

cet espace est à vendre ! mise à prix à 87€


Pour répondre à ce sujet (et notifier automatiquement son auteur), cliquez sur le bouton REPONDRE A CE SUJET. Si vous voulez en plus avertir de votre réponse une personne qui a participé à ce sujet, cliquez sur le bouton en face de son intervention. Enfin si vous voulez inviter quelqu'un à réagir, utilisez les appeaux ci-dessous. Seuls les membres logués peuvent utiliser les appeaux et seuls les membres actifs peuvent être appeautés ^^. Bonne notification !

Vous n'êtes pas membre ou vous n'êtes pas logué(e) ou les appeaux sont désactivés dans votre profil. Vous ne pouvez pas utiliser les appeaux.