Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Acl & Zend_Auth
Zend_Acl & Zend_Auth Forum d'entraide pour les composants Zend_Acl & Zend_Auth du Zend Framework (contrôle d'accès, gestion des droits, authentification, etc.). Avant de poster -> Cours Zend_Acl et Zend_Auth.
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 14/07/2011, 02h12   #1
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : juillet 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2011
Messages : 22
Points : 10
Points : 10
Par défaut Notice: Object of class My_Acl could not be converted to int

Bonjour,

Mon problème est dans le titre, mon application ZF m'affiche cette ligne en début de page:
Citation:
Notice: Object of class My_Acl could not be converted to int in /var/www/bpetit/library/Zend/Controller/Plugin/Broker.php on line 58 . J'aurais aimé savoir si cette notice était un problème courant ou si cela correspond à une erreur de ma part. La classe My_Acl est présente dans le fichier library/My/Acl.php.
Je vous remercie d'avance pour toute réponse postée.

Ben
ben.p est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/07/2011, 08h48   #2
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Il faudrait donc qu'on puisse voir la classe My_Acl !
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/07/2011, 09h02   #3
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
A tous les coups tu as dû essayer un cast implicite vers integer (ce qui ne peut pas marcher en PHP).

Tu as dû écrire:
ou quelque chose dans ce goût là je me trompe ?
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/07/2011, 17h54   #4
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 460
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 460
Points : 644
Points : 644
Est-ce que tu la préciser pour l'autoloader pour la récupérer avec
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2011, 00h00   #5
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : juillet 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2011
Messages : 22
Points : 10
Points : 10
Bonsoir,
MaitrePylos, voici la classe My_Acl:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
<?php
class My_Acl extends Zend_Acl
{
	public function __construct (Zend_Auth $auth)
	{	
		$this->add(new Zend_Acl_Resource('index'));
        $this->add(new Zend_Acl_Resource('cv'));
        $this->add(new Zend_Acl_Resource('contact'));
        $this->add(new Zend_Acl_Resource('realisation'));
        $this->add(new Zend_Acl_Resource('projet'));
        $this->add(new Zend_Acl_Resource('admin'));
 
       	$this->addRole(new Zend_Acl_Role('guest'));
       	$this->addRole(new Zend_Acl_Role('admin'));
 
       	$this->allow('guest','index');
       	$this->allow('guest','cv');
       	$this->allow('guest','contact');
       	$this->allow('guest','realisation');
       	$this->allow('guest','projet');
       	$this->deny('guest','admin');
       	$this->allow('guest','admin','login');
       	$this->allow('admin','admin');
	}	
}
Benjamin Delespierre, je ne crois pas avoir écrit un tel code.

m4riachi, oui j'ai écrit ça:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
<?php
 
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
	protected function _initPlugins()
	{
		$auth = Zend_Auth::getInstance();
		$acl = new My_Acl($auth);
		$front = Zend_Controller_Front::getInstance();
		$front->registerPlugin(new My_Auth($auth,$acl),$acl);
	}
}
Je crois avoir trouvé mon erreur, dans le code précédent, l'appel à la fonction registerPlugin(new My_Auth($auth,$acl),$acl), à la ligne 11, me semble incorrect.
En effet cette fonction:
Code :
1
2
3
4
5
6
7
8
9
 
/**
     * Register a plugin.
     *
     * @param  Zend_Controller_Plugin_Abstract $plugin
     * @param  int $stackIndex
     * @return Zend_Controller_Plugin_Broker
     */
    public function registerPlugin(Zend_Controller_Plugin_Abstract $plugin, $stackIndex = null)
demande un entier en second paramètre (intitulé stackIndex). Lorsque je passe un entier ou rien en second paramètre, je n'ai plus la notice en question. Je pensais pourtant avoir suivi correctement le tutoriel sur Zend_Acl et Zend_Auth .

Je vous remercie vivement pour vos réponses. Désolé d'avoir posté pour quelquechose que j'aurais peut-être pu trouver par mes propres moyens.

Ben
ben.p est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h16.


 
 
 
 
Partenaires

Hébergement Web