CakePHP-Fr.Org

Forum francophone du Framework CakePHP

Vous n'êtes pas identifié.

#1 20-05-2017 19:31:22

AlexDonazzan
Chouquette
Date d'inscription: 20-05-2017
Messages: 2

Error: Call to a member function find() on null

Bonjour à tous,
Je suis en train de faire un petit projet pour enregistrer des élèves et enregistrer des notes par matières (j'essaye de créer un formulaire d'ajout ici) seulement j'ai un gros pb car on me dit que j'ai une erreur fatale mais je ne la comprend pas du tout...

l'erreur se trouve sur cette ligne (j'ai essayé deux méthodes mais aucune ne fonctionnent) :

$ele = $this->Eleve->findByNom($this->request->data["eleve"]["nom"]);
$ele = $this->Eleve->find("first", array('condition' => array("eleve.nom" => $this->request->data["eleve"]["nom"])));


Seulement, comme je débute avec cakePHP, je ne sais pas trop quoi vous donner pour être claire donc je vais essayer de faire au mieux avec le controller et le .ctp correspondant.

ElevesController.php :
<?php
class ElevesController extends AppController {

    public function toto() {
    debug($this->request->is("post"));
    // si le post n'est pas vide
    if($this->request->is("post")) {
        // equivaux a $_POST
        //$ele = $this->Eleve->findByNom($this->request->data["eleve"]["nom"]);
        $ele = $this->Eleve->find("first", array('condition' => array("eleve.nom" => $this->request->data["eleve"]["nom"])));
        //debug($ele);
        // si l'eleve existe

        // s'il existe pas
        }
    }
}
?>

toto.ctp :

    <h3>Ajouter un élève </h3>
    <?php
    echo $this->Form->create("eleve");
    echo $this->Form->input("nom", ["label" => "Nom", "placeholder" => "Nom de l'élève","before"]);
    echo $this->Form->input("prenom", ["label" => "Prénom", "placeholder" => "Prénom de l'élève", "before"]);
    echo $this->Form->input("dateN",  ['label' => 'Date de naissance',
    'dateFormat' => 'DMY',
    'minYear' => date('Y') - 25,
    'maxYear' => date('Y') - 4]);
    echo $this->Form->end("ajouter un élève");
?>

Hors ligne

 

#2 20-05-2017 22:17:29

AlexDonazzan
Chouquette
Date d'inscription: 20-05-2017
Messages: 2

Re: Error: Call to a member function find() on null

Pour ceux que ça intéresse, le problème que j'avais était super chiant !

le problème que j'ai rencontré c'est que le nom donné à ma table eleve devait se transformer en elef dans la requète...

Je suis très énervé après ce problème qui m'a pris toutes la journée à comprendre !
Bref j'espère que le reste du développement de cette application sera grandement facilité par le framework sinon je vais arrêter de l'utiliser !!!
Puis si la transformation des mots au pluriel en singulier est un problème récurrent, il faudrait le mentionner clairement dans les messages d'erreurs du framework pour éviter de perdre son temps inutilement !

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB
Traduction par FluxBB.fr