bonjour j'ai transferer mon site cakephp sur un le serveur de 1and1 en local tout marche à merveille mais sur le serveur j'ai une petite erreur que je ne vois pas !
Voilà j'ai un

controlleur WorksController{
public $components = array('Img'); 
/**
* admin_index method
*
* @return void
*/
    public function admin_index() {
        $this->paginate = array('Work'=>array(
                'limit'=>8
            ));
        $d'works'] = $this->Paginate('Work',array('online >=0'));
        $this->set($d);
    }
}

un composant ImgComponent

class ImgComponent extends Component{
/**
* Permet de cropper une image au format png/jpg et gif au format souhaité *
* Si la largeur ou la hauteur est mise à 0 la dimension sera automatiquement calculé
* de manière à garder le ratio de l'image *
* @param string $img Fichier image d'origine (doit avoir une extension)
* @param string $dest Fichier de destination (avec l'extension .jpg)
* @param integer $largeur Largeur de l'image en sortie
* @param integer $hauteur Hauteur de l'image en sortie
*/
         function crop($img,$dest,$largeur=0,$hauteur=0)
         {
                        $dimension=getimagesize($img);
                        $ratio = $dimension[0] / $dimension[1];
                        // Création des miniatures
                        if($largeur==0 && $hauteur==0){ $largeur = $dimension[0]; $hauteur = $dimension[1]; }
                          else if($hauteur==0){ $hauteur = round($largeur / $ratio); }
                        else if($largeur==0){ $largeur = round($hauteur * $ratio); }

                        if($dimension[0]>($largeur/$hauteur)*$dimension[1] ){ $dimY=$hauteur; $dimX=round($hauteur*$dimension[0]/$dimension[1]); $decalX=($dimX-$largeur)/2; $decalY=0;}
                        if($dimension[0]<($largeur/$hauteur)*$dimension[1]){ $dimX=$largeur; $dimY=round($largeur*$dimension[1]/$dimension[0]); $decalY=($dimY-$hauteur)/2; $decalX=0;}
                        if($dimension[0]==($largeur/$hauteur)*$dimension[1]){ $dimX=$largeur; $dimY=$hauteur; $decalX=0; $decalY=0;}
                        $miniature =imagecreatetruecolor ($largeur,$hauteur);
                        $ext = end(explode('.',$img)); 
                        if(in_array($ext,array('jpeg','jpg','JPG','JPEG'))){$image = imagecreatefromjpeg($img); }
                        elseif(in_array($ext,array('png','PNG'))){$image = imagecreatefrompng($img); }
                        elseif(in_array($ext,array('gif','GIF'))){$image = imagecreatefromgif($img); }
                        else{ return false; }
                        imagecopyresampled($miniature,$image,-$decalX,-$decalY,0,0,$dimX,$dimY,$dimension[0],$dimension[1]);
                        imagejpeg($miniature,$dest,90);

                        return true;
        }

}

et lorsque je charge la vue admin_index.ctp
rien ne s'affiche pourtant en local ça fonctionne correctement ! je vois d'erreur j'ai une page complétement blanche ! Et lorque je commente la ligne

// public $components = array('Img','RequestHandler');

la vue s'affiche mais il ne charge pas le composant ! et mon code derrière ne marche pas !

2 réponses


Les autres pages du sites fonctionnent correctement ?

ndiayejp
Auteur

Personne pour m'aider à trouver une solution !