Kommunauty
Connexion
Inscription

Problème de variable


Warranty Messages : 391

Salut à tous !

Je vais essayé d'expliquer mon problème.

Je viens de "finir" l'espace membre de mon site mais je rencontre un petit problème, je vous donne un exemple de mon problème.

Je voudrais affiché le "Pseudo" du membre dans la sidebar du site quand le membre est connecté, donc je fait appelle à ma variable $user->the_username() pour affiché "username", mais cela m'affiche l'erreur: (pour info ma sidebar est dans mon fichier footer.php)

Notice: Undefined variable: user in E:\xampp\htdocs\site\theme\footer.php on line 8

Fatal error: Call to a member function the_username() on a non-object in E:\xampp\htdocs\site\theme\footer.php on line 8

Alors que ma variable est bien définie dans mon fichier class.user.php

Quand j'essais d'inclure mon fichier class.user.php dans mon footer cela m'affiche l'erreur:

Fatal error: Cannot redeclare class user in E:\xampp\htdocs\site\includes\class.user.php on line 111

Je ne comprend rien à moins que j'y mis prend mal

Merci beaucoup de votre aide

mardi 3 juillet 2012

Lucas Messages : 830

Salut !

2ème erreur : simplement parce que tu l'as déjà inclu plus tôt, et donc que php ne peut pas réécrire cette classe.

Ensuite ta première erreur signifie que ta variable "user" est non-définie.

Je suppose que tu as déjà fais un

€user = new User();

(oui, c'est bien un euro, je trouve pas le symbole dollard sur mon portable )

Bon, même si je conseillerais plutôt d'utiliser une classe statique puisqu'il n'y aura qu'à chaque fois une seule instance (donc après ce serait utilisé comme : User::connect(), et tout ça, et surtout accessible partout), je pense que tu as du utiliser une architecture genre mvc, et que là où tu veux récupérer le pseudo tu te trouves dans une autre classe. Du coup, essayes de mettre cette ligne avant de le récupérer :

global €user;
mardi 3 juillet 2012

Warranty Messages : 391

Désoler pour l'attente.

J'ai essayé se que tu propose mais cela ne fonctionne pas.

Je n'arrive pas à afficher les informations de ma base de données de ma table "users"

Malheureusement je ne connait pas tout de PHP/MYSQL il y a quelques semaines maintenant que je commence à le géré donc j'ai des gros problème par moment pour réglé les problèmes

Existerais t'il une solution simple pour afficher par exemple "Username" du membre ?

Voici ma table "Users"

user_id

user_username

user_password

user_email

user_website

user_nickname

user_profile

user_ip

Merci beaucoup de votre aide

vendredi 6 juillet 2012 (Dernière édition vendredi 6 juillet 2012)

Lucas Messages : 830

Nan mais clairement, ta variable €user contient quoi ? Et tu cherches récupérer sa valeur depuis où  ?

vendredi 6 juillet 2012

Warranty Messages : 391

J'ai réussi à réglé une parti de mon problème, mais je voudrais afficher "username" par l'ID de l'utilisateur, car la il m'affiche tous les membres de ma table "users", mais je ne sais comment faire

Voici mon code:

<?php $req = mysql_query("select user_id, user_username, user_email from users");
while($dnn = mysql_fetch_array($req)){
echo $dnn['user_username'];
}
}
?>
dimanche 8 juillet 2012

SiMax Messages : 7572

Il suffit d'ajouter une condition directement :

$req = mysql_query("select user_id, user_username, user_email from users WHERE user_id = '$id'");

Soit $id l'ID de l'utilisateur, tu ne demande d'afficher que la ligne de l'utilisateur. Donc ton while ne tournera qu'une fois, avec la bonne ligne.

dimanche 8 juillet 2012

Warranty Messages : 391

J’obtiens une erreur "Undefined variable: id"

dimanche 8 juillet 2012

Dawlin Messages : 3381

Parce que la variable n'est pas définie Où stockes-tu l'ID de l'utilisateur ??

dimanche 8 juillet 2012

Warranty Messages : 391

Salut !

Désolé j'ai oublié de dire que le problème est résolu finalement j'ai opté pour les SESSIONS

dimanche 15 juillet 2012

Darkevil Messages : 221

Pourquoi ne pas utiliser dans ta table un user_connect (avec true-false) et faire une boucle while : pour chaque pseudo, si $user_connect == true alors $user_name va dans la variable $user_connected (par exemple) et on recommence pour chaque membres. Puis on affiche le tout.

Lors de sa déconnection on passe en $user_connect = false

Le seul truc chiant c'est si tu as beaucoup de membres, la ça posera problème.

EDIT: Réponse stupide, les SESSIONS sont mieux, et je n'ai pas regardé les derniers posts .

mardi 17 juillet 2012 (Dernière édition mardi 17 juillet 2012)

Page suivante »