Fork me on GitHub




(1) 2 »


Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
Bonjour à tous,

Aujourd'hui, j'ai mis au point un système d'avertissement pour les membres. Là n'est pas le problème.

Dans le profil, je dois à un moment récupérer l'id du membre qui est connecté sur la page userinfo.php.
J'ai donc ajouter ceci dans le fichier userinfo.php:
$uid2 $xoopsUser->getVar('uid');


Pour qu'ensuite, mon code plus bas ressemble à ceci:
$raiison mysql_query("SELECT * FROM hinso_avertos WHERE id_member=$uid2") or die(mysql_error());


Tout marche au poil, sauf que si je ne suis pas logué, en accédant à n'importe quel profil, j'obtient une page blanche avec l'erreur:
Fatal errorCall to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php on line 44


Logique me diriez vous, y'a t-il un moyen de récuperer l'id du membre qui visite la page, mais que les anonymes puissent quand même avoir accès ?

Merci.

Posté le : 08/08/2008 20:11
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
Oups, finalement j'ai rien dit, en bougeant
$uid2 $xoopsUser->getVar('uid');
j'ai réussi à régler le problème. :D

Si ça intéresse quelqu'un, un système d'avertissements pour Xoops, il peut me contacter.

Posté le : 08/08/2008 20:12
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
J'avais une dernière question, comment on peut faire pour que $uid2 = l'uid du membre dont l'on visite le profil, SEULEMENT quand on est admin ?

Posté le : 08/08/2008 20:23
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Xoops accro
Inscrit: 16/08/2005 19:46
De Nanterre
Messages: 2331
Bonsoir moi123,
Effectivement, je serai preneur de tes trouvailles
Tu ne peux pas mettre cela en ligne?
Bonne soirée

Posté le : 08/08/2008 20:35

eparcyl... tranquille.
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
Salut eparcyl,

J'attends juste de pouvoir régler ce petit problème, et je métrerais ça en ligne, avec un petit tutoriel.

Posté le : 08/08/2008 20:42
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Régulier
Inscrit: 26/02/2007 16:00
Messages: 494
Citation :
moi123 a écrit:

Tout marche au poil, sauf que si je ne suis pas logué, en accédant à n'importe quel profil, j'obtient une page blanche avec l'erreur:
Fatal errorCall to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php on line 44

Hum, hum, c'est quand même du b-a-ba en programmation, surtout si on obtient un tel message d'erreur!!!

La fonction "is_object", elle est faite pour quoi??? Curieusement, je crois qu'elle sert à éviter ce genre d'erreur! C'est tellement bizarre quand même.

Bref, avec un bout de code du style :

if (is_object($xoopsUser)) {
    
$uid2 $xoopsUser->getVar('uid');
}else{
    
$uid2 0// par exemple
}


Cela devrait 'tout bien' mieux fonctionner... :roll: On peut simplifier rapidemment en :

$uid2 = (is_object($xoopsUser)) ? $xoopsUser->getVar('uid') : 0;


Et pour savoir si c'est un admin, et bien "isAdmin" est vachement pratique... On arrive alors à ce type de vérification :
if (is_object($xoopsUser) && $isAdmin) .......

Posté le : 10/08/2008 09:24

Portail en aquariophilie avec une passion pour le poisson clown en aquariums récifaux.
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Régulier
Inscrit: 26/02/2007 16:00
Messages: 494
(zut, on ne peut pas éditer dans ce salon de discussion... )

J'ai oublié de préciser que $isAdmin est défini au début du fichier userinfo.php !

Posté le : 10/08/2008 09:30

Portail en aquariophilie avec une passion pour le poisson clown en aquariums récifaux.
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
Salut Aquaportail,

Merci pour tes réponses, j'avais trouvé seul finalement.
Quand on se penche bien sur les variables etc. de Xoops, ce CMS est formidable en fait. :)

Il faut juste que j'intègre la fonction pour bannir, et ça devrait être bon.

Posté le : 10/08/2008 11:19
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Régulier
Inscrit: 26/02/2007 16:00
Messages: 494
Citation :
moi123 a écrit:
Il faut juste que j'intègre la fonction pour bannir, et ça devrait être bon.

Perso, j'ai juste défini un nouveau Groupe de membres intitulé Banni pour lesquels les droits/privilèges d'accès aux modules sont hypers restreints. ;) Ensuite, il reste juste à modifier manuellement l'adresse mail pour éviter une demande de nouveau mot de passe qu'on aura préalablement modifié... Mais chhuuuuut! On peut aussi virer les notifications, etc...

Posté le : 10/08/2008 11:50

Portail en aquariophilie avec une passion pour le poisson clown en aquariums récifaux.
Partager Twitter Partagez cette article sur GG+
Re: Errerur Call to a member function getVar() on a non-object in /var/www/hinsolite/www/userinfo.php
Aspirant
Inscrit: 09/04/2006 17:19
Messages: 55
Je voulais aussi savoir, s'il y'avait un quelconque moyen, de faire une variable pour un groupe.

Par exemple:
if (user_is_ingroup -> nom_du_groupe)
{
echo "truc"
}

Posté le : 19/08/2008 20:35
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

43 Personne(s) en ligne (35 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 43 | Plus ...