Bonjour,
J'ai suivis le tutorial Grafikart concernant l'envoi d'emails sauf que j'ai un problème au moment d'envoyer mes données au modèle et je n'arrive pas à voir d'où cela provient.

Voici l'erreur :

Error: Call to a member function send() on a non-object
File: C:\wamp\www\suivitech\app\Controller\EnvoisController.php
Line: 12

je pense que la fonction send() n'est pas reconnu mais je ne sais pas pourquoi alors que dans le tuto cela fonctionne.

Mon code...
Mon controller : EnvoisController.php :

<?php
 App::uses('AppController', 'Controller');

 class EnvoisController extends AppController {
    function index(){
        if($this->request->is('post')){
            $this->Envoi->send($this->request->data'Envoi']);
        }
    }
 }
?>

Mon modèle : Envoi.php

<?php
App::uses('AppModel', 'Model');
     class Envoi extends AppModel{
        public $useTable = false;
        public function send($d){
            debug($d);
        }
     }
?>

Ma vue : index.ctp

<div class="envois index">
    <h2><?php echo __('Envois'); ?></h2>
    <?php echo $this->Form->create('Envoi'); ?> 
        <?php echo $this->Form->input('name', array('label'=>'Votre nom')); ?>
        <?php echo $this->Form->input('email', array('label'=>'Votre email')); ?>
        <?php echo $this->Form->input('content', array('label'=>'Votre message', 'type'=> 'textarea')); ?>
    <?php echo $this->Form->end('Envoyer'); ?>
    </div>

L'erreur est surement toute bête mais je ne suis pas encore très à l'aise avec Cakephp. Merci de l'intérêt que vous porterez à mon problême.

Cordialement.

Maxime

3 réponses


Airday
Réponse acceptée

Salut

<?php
 App::uses('AppController', 'Controller');

 class EnvoisController extends AppController {

    public $uses = array('Envoi');
    function index(){

        if($this->request->is('post')){
            $this->Envoi->send($this->request->data'Envoi']);
        }
    }
 }
?>

Essaie ça et fait moi un retour ;) stp

Yes ça fonctionne ;) merci beaucoup pour la réactivité de ta réponse ! ;)