CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Besoin d'aide PHP Class

Highscore
Highscore
Niveau 7
28 septembre 2017 à 15:46:25

Bonjour à tous,

Alors je débute en POO avec le modèle MVC, et je galère quelque peu avec mes class.
Plus précisément avec une class qui me permettrai d'édit/insert/update.
(Je sais que dans l'idéal mais requêtes devraient elle-mêmes être réalisée via des méthode définie dans d'autre class, mais je commence "léger" si je puis dire, plutôt pas à pas, afin de bien comprendre la logique/méchanismes/...)

J'ai donc cette classe : https://pastebin.com/ap7fL5hV (qui me retroune une erreur 500 lors de l'appel)
(la méthode appelée dans le __construct fait partie d'une autre class de connexion a la Db, bien présente lors de l'appel)

Si je sors la fonction de la class et y intègre la connexion a la Db, aucun soucis lors de l'appel, les opérations sont effectuées correctement.

Quelqu'un pourrait donc m'indiquer comment je pourrais intégrer ma fonction dans une class (qui de préférence pourra contenir l'ensemble de mes insert/edit/delete, ma class permettant de lister étant fonctionelle, mais si j'ai bien compris tout ce que j'ai lu, je dois créer une autre class pour les opérations.)

EDIT : Je fais l'appel de cette manière :

//Les paramètres sont en dur pour tester
HorairesManager::editjour('lun', '08:00', '17:00', '0');

Merci d'avance et bonne journée à tous !

Message édité le 28 septembre 2017 à 15:51:23 par Highscore
Ebara
Ebara
Niveau 16
28 septembre 2017 à 15:52:09

Ca aurait été bien d'avoir l'erreur que ça te sort, sinon il est difficile d'en déduire quoi que ce soit. Pour t'aiguiller un peu:

Si ça pète dans le constructeur: vérifie que tu as bien importé le namespace de ta classe Db
Si ça pète dans tes méthodes (et ça pètera de toutes façons dans tes méthodes) tu n'as pas déclaré ton $db comme une propriété de ta classe:


class HorairesManager {
    
    /** @var Db $db */
    protected $db;

    public function __construct()
    {
        $this->db = Db::getInstance();
    }

    public function getDb()
    {
        return $this->db;
    }

    public function uneMethodeQuelconque()
    {
         $req = $this->getDb()->prepare('blablabla');
    }
}
Highscore
Highscore
Niveau 7
28 septembre 2017 à 16:58:32

Merci pour ta réponse.

Concernant les erreurs, tu parles de log php je suppose?

Ebara
Ebara
Niveau 16
29 septembre 2017 à 09:18:25

Le 28 septembre 2017 à 16:58:32 highscore a écrit :
Merci pour ta réponse.

Concernant les erreurs, tu parles de log php je suppose?

Techniquement ça sort dans l'error log d'apache, et tu peux activer l'affichage des erreurs dans ton php.ini aussi histoire de voir directement là où ça pète au lieu d'avoir page de 500 :)

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment