Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Programmez en orienté objet en PHP

    25 avril 2017 à 16:50:45

    Bonjour,

    J'arrive pas a trouver de réponse pour savoir si c 'est "propre" d 'utiliser dans twig ( avec silex )

    {%autoescape false%}{{ mon.contenu.tinyMCE }}{%endautoescape%}

    Pour pouvoir voir le contenu html correctement ( voir du GRAS et pas du <strong>gras</strong> ).

    Merci

    Edit:

    A delete mauvaise section, merci

    -
    Edité par gatch14 25 avril 2017 à 16:52:31

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      25 avril 2017 à 18:38:40

      blaisinho a écrit:

      Superbonbon a écrit:

      blaisinho a écrit:

      Bonsoir!

      Je suis sur la manipulation des données stockées et je reçois un message d"erreur  à l'execution libellé de la manière suivante:

      Fatal error: call to a member function prepare () on null in PersonnesManager line 11.

      Que se passe t-il?


      Salut,

      A mon avis, c'est une erreur au niveau de ta requête SQL. 

      Bonsoir!

      Pourtant j'utilise la meme requete que dans le cours!

      Faudrait-il la réécrire?



      Ce n'est pas forcément la requête le problème. Vérifie bien ta base de donnée, la table et les différents champs.

      • Partager sur Facebook
      • Partager sur Twitter
        25 avril 2017 à 23:00:13

        AdrianoAssante a écrit:

        Bonjour à tous, j'ai un petit soucis, j'arrive à me connecter à ma bdd sur phpmyAdmin, cependant il  m'est impossible de faire un model de login/mdp pour changer de page....

        <?php
        
        $config = array(
        		"login" => "adriano",
        		"mdp"=>"azerty",
        		"base"=>"olibrary"
        );
        
        $bdd = new PDO("mysql:host=localhost;dbname=".$config["base"].";charset=utf8",
        		$config["login"], $config["mdp"]);
        
        ?>
        
        
        <html>
        <form method="POST" action"">        
        <form action="" method="post">
        	<div>
        		<div>
        			<input type="text" name="mail" placeholder="email"/>
        		</div>
        		<div>
        			<input type="password" name="password" placeholder="password"/>
        		</div>
        		<div>
        			<input type="submit" value="valider"/>
        		</div>
        </form>
        </html>
        
        
        
        <?php
        $sql = $bdd->prepare("SELECT mail, password FROM customer WHERE mail = :mail AND password = :password");
        
        $user = $sql->execute(array ('mail' => $_POST["mail"],
        		'password' => $_POST["password"]));
        
        $user -> fetch();
        ?>
        
        
        



        -
        Edité par AdrianoAssante hier à 19:44


        As tu pensé as mettre
        $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); pour voir tes erreurs sql
        sinon met le et dis moi ce que ça te met
        • Partager sur Facebook
        • Partager sur Twitter
          26 avril 2017 à 0:49:01

          Karolyn a écrit:

          Ici quelqu'un a eu le même soucis et le problème a été résolu, est-ce que ça t'aide? Tiens moi au jus ^^ courage 

          https://openclassrooms.com/forum/sujet/pdo-could-not-find-driver-65687


          salut karolyn!

          merci pour ton lien, mon problème est résolu. Mais je suis intrigué car j'ai reécrit mon code exactement de la meme façon que celui du lien, mais le mien ne marche pas, donc j'ai copié le code qui fonctionne et maintenant c'est bon!

          • Partager sur Facebook
          • Partager sur Twitter
          #jelly_bean
            26 avril 2017 à 6:53:12

            Bonjour tout le monde,

            Suite à mon souci, j'ai refais le site MicroCMS de A à Z. Voici maintenant ce que j'obtiens quand j'appelle l'adresse localhost:83/MicroCMS/

            Pour info, j'utilise le port 83 et non 80 car le port 80 est déjà utilisé par un composant de windows 10 pro.

            Si j'appelle l'adresse http:/microcms/, j'ai une erreur 404.

            Voici ce que j'ai fait à la fin du fichier httpd-vhosts.conf :

            <VirtualHost *:83>
            DocumentRoot "C:\wamp\www"
                ServerName localhost
            </VirtualHost>


            <VirtualHost *:83>
               DocumentRoot "C:\wamp\www\MicroCMS\web"
                ServerName microcms
                <Directory "C:\wamp\www\MicroCMS\web">
                AllowOverride all
                </Directory>
            </VirtualHost>

            J'ai bien décommenté la ligne "Include conf/extra/httpd-vhosts.conf" dans httpd.conf.

            Voici la fin de mon fichier "hosts" :

            127.0.0.1       localhost:83
            127.0.0.1        microcms
            127.0.0.1       localhost
            localhost        localhost:83

            Autre info, j'utilise le serveur wamp et non xamp.

            Est-ce que quelqu'un a une idée svp ? Ca commence à me souler, ça fait plusieurs jours que je bloque sur le problème, si ça continue, je vais arrêter là.

            Merci à celui ou celle qui trouvera la solution.

            Bonne journée

            François

            • Partager sur Facebook
            • Partager sur Twitter
              26 avril 2017 à 8:27:41

              Bonjour François,
              Amha, et sauf erreur de ma part,
              vue ta config (host et httpd-vhosts.conf)
              il devrait suffire de taper seulement  'microcms' (sans guillemets, ni localhost)
              dans ta barre de navigation pour accéder au contenu de C:\wamp\www\MicroCMS\web ???

              ---

              Edit:
              Une info intéressante à propos de ces fichiers par Otomatic
              Wampserver et plusieurs sites : http://forum.wampserver.com/read.php?1,40617,42582


              -
              Edité par nanart 26 avril 2017 à 8:35:33

              • Partager sur Facebook
              • Partager sur Twitter
                26 avril 2017 à 17:17:46

                Sujet: MOOC Symfony 3 - Filtre time_diff de l'extention Date de Twig - Pourquoi la différence de temps est-elle si imprécise?

                Bonjour à tous,

                Je me permets de poser ma question sur ce forum PHP car celui de Symfony est fermé.

                Je n'arrive pas à obtenir une différence de temps précise entre une date X et maintenant en utilisant le filtre Twig time_diff dans un template Twig.

                Est-ce normale?

                Dans mon template j'utilise une variable datex que j'ai définie dans mon contrôleur par:

                 datex = new \DateTime('2017-06-08'); // le 8 Juin 2017


                Dans mon template j'applique le filte time_diff sur cette variable datex afin  de connaitre la différence de temps entre elle et maintenant

                {{  datex|time_diff }}

                Le résultat affiché est de 1 mois (avec comme date now = 2017-04-26)

                Pourquoi ce résulat imprécis?

                Merci pour votre aide si un Symfonyste passe par là par hasard...

                • Partager sur Facebook
                • Partager sur Twitter
                  26 avril 2017 à 20:37:26

                  nanart a écrit:

                  Bonjour François,
                  Amha, et sauf erreur de ma part,
                  vue ta config (host et httpd-vhosts.conf)
                  il devrait suffire de taper seulement  'microcms' (sans guillemets, ni localhost)
                  dans ta barre de navigation pour accéder au contenu de C:\wamp\www\MicroCMS\web ???

                  ---

                  Edit:
                  Une info intéressante à propos de ces fichiers par Otomatic
                  Wampserver et plusieurs sites : http://forum.wampserver.com/read.php?1,40617,42582


                  -
                  Edité par nanart il y a environ 10 heures

                  Merci Nanart pour la réponse. Effectivement, on pourrait taper seulement "microcms" (c'est même le but de la manoeuvre), mais ça ne fonctionne pas non plus, j'ai une erreur 404.

                  J'ai regardé le forum que vous avez mis en lien, même en appliquant ce qui est conseillé, j'ai toujours les mêmes soucis.

                  Ce week-end, je testerai avec xamp.

                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 avril 2017 à 15:29:39

                    Peut-être une virgule manquante ou quoi, un truc discret ^^ contente que ça fonctionne en tout cas! 

                    KpoujiefitNouhou1 a écrit:


                    salut karolyn!

                    merci pour ton lien, mon problème est résolu. Mais je suis intrigué car j'ai reécrit mon code exactement de la meme façon que celui du lien, mais le mien ne marche pas, donc j'ai copié le code qui fonctionne et maintenant c'est bon!



                    • Partager sur Facebook
                    • Partager sur Twitter
                      30 avril 2017 à 23:19:42

                      Bonjour tout le monde, j'ai une petite question technique et j'espère que quelqu'un pourra m'éclairer un peu.... Pourquoi un backslash avant style new \DateTime()...

                      Je sais c'est une question de namespace et j'imagine que c'est pour sortir du namespace ne cours ou un truc de ce genre mais j'ai besoin d'éclaircissement clair sur ce sujet. Donc si quelqu'un a un lien ou des explicitations claires sur ce sujet ce serait cool ;-)

                      johan8x dsl je n'en suis pas encore là t'es un poil en avance sur moi mais dès que j'y suis je me planche là dessus ;-)

                      • Partager sur Facebook
                      • Partager sur Twitter
                        1 mai 2017 à 17:19:45

                        .

                        -
                        Edité par Karolyn 1 mai 2017 à 18:20:37

                        • Partager sur Facebook
                        • Partager sur Twitter
                          1 mai 2017 à 18:20:34

                          Bonjour,

                          J'ai un petit probleme avec ma BDD, voici le code :

                          <?php

                          session_start();

                          if(isset($_SESSION['login'])){

                          if(isset($_GET['action'])){

                          if($_GET['action']=='add'){

                          if(isset($_POST['submit'])){

                          $titre=$_POST['titre'];

                          $description=$_POST['description'];

                          $prix=$_POST['prix'];

                          if($titre&&$description&&$prix){

                          try{

                            $db = new PDO('mysql:host=127.0.0.1;dbname=site_ppe_baboucar', 'root','');

                            $db->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER); // les noms de champs seront en caractères minuscules

                            $db->setAttribute(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION); // les erreurs lanceront des exceptions

                           }

                           catch(Exception $e){

                            die('Une erreur est survenue');

                           }

                          }else{

                          echo 'Veuillez remplir tous les champs';

                          31 }

                          32 }

                          33 $insert = $db->prepare("INSERT INTO produits (titre, description, prix) VALUES('$titre', '$description', '$prix')");

                          34 $insert->execute();

                          ?>

                          et voici ce que mon navigateur me retourne :

                           Notice: Undefined variable: db in C:\wamp64\www\Site PPE Baboucar\admin.php on line 33

                          Fatal error: Call to a member function prepare() on null in C:\wamp64\www\Site PPE Baboucar\admin.php on line 33

                          Cordialement.

                          • Partager sur Facebook
                          • Partager sur Twitter
                            1 mai 2017 à 19:40:58

                            ligne 34 faut executer un tableau entre () , non ?

                            • Partager sur Facebook
                            • Partager sur Twitter
                              2 mai 2017 à 14:31:37

                              Salut les amis,

                              Après avoir fini chaque chapitre sur ce cours, je me fais toujours la même reflexion. "Si seulement, il y avait des exercices pour pouvoir solidifier ce que j'ai appris". Le top pour serai d'avoir des exercices inspirés du modèle des cours de JavaScript. Je trouve ce modèle vraiment bien fait pour l'apprentissage. ça permet de mieux intégrer les notions apprises. D'un coté il y a le cours théorique à lire, de l'autre des exercices qui deviennent progressivement plus difficiles et qui permettent d'utiliser ce que l'on apprend. Je suis toujours à la recherche de tels exercices sur le net. Si quelqu'un connais des sites pour s'exercer en PHP POO ou as des  suggestions, je suis preneur.


                              Merci d'avance!

                              • Partager sur Facebook
                              • Partager sur Twitter
                                2 mai 2017 à 17:01:24

                                Bonjour kid_jonath,

                                DateTime est une classe qui appartient au namespace globale, d'où la nécessité de la précéder d'un anti-slash.

                                Si tu ne mets pas d'anti-slash devant, ton application recherchera la classe dans le namespace courant et ne l'y trouvera pas.

                                J'ai trouvé ce lien qui explique la notion de namespace globale.

                                http://php.net/manual/fr/language.namespaces.global.php

                                Bonne route à toi. (Pour ma question en relation avec Symfony ne t'inquiètes pas! Merci)

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  2 mai 2017 à 20:38:57

                                  johan8x a écrit:

                                  Bonjour kid_jonath,

                                  DateTime est une classe qui appartient au namespace globale, d'où la nécessité de la précéder d'un anti-slash.

                                  Si tu ne mets pas d'anti-slash devant, ton application recherchera la classe dans le namespace courant et ne l'y trouvera pas.

                                  J'ai trouvé ce lien qui explique la notion de namespace globale.

                                  http://php.net/manual/fr/language.namespaces.global.php

                                  Bonne route à toi. (Pour ma question en relation avec Symfony ne t'inquiètes pas! Merci)

                                  Merci beaucoup pour ta réponse, j'ai fais mes recherches ainsi que quelques test et ai trouvé mon bonheur. Et c'est logique aussi quand on y réfléchi ;-)

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    2 mai 2017 à 21:14:07

                                    Bonsoir à tous,

                                    Je suis en train de suivre le cours sur la POO de PHP, je suis arrivé sur la manipulation de données, à la fin de cette partie (juste avant le premier TP) le code données est censé ajouter un personnages à la BDD mais chez moi rien ne s'ajoute, je n'est aucun message juste une page blanche et rien dans la BDD.

                                    Voici le lien de la partie du cours concerné :

                                    https://openclassrooms.com/courses/programmez-en-oriente-objet-en-php/manipulation-de-donnees-stockees

                                    Je fait mes essais en local, j'ai tester avec une configuration sous Ubuntu et Windows, comme je ne sais pas d’où peut venir le souci je ne poste pas de code, si vous voulez le code de ma page demander moi ;)

                                    Merci et bonne soirée à tous :)

                                    -
                                    Edité par m@rcus62 2 mai 2017 à 21:15:09

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      3 mai 2017 à 2:19:06

                                      m@rcus62, sans ton code, on peut difficilement aider :) 

                                      -
                                      Edité par Karolyn 3 mai 2017 à 2:27:05

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        3 mai 2017 à 7:38:28

                                        Bonjour,

                                        Je vous place le code en entier, la parti concernant la connexion se trouve en bas

                                        <?php
                                        class Personnage
                                        {
                                        	private $_id;
                                        	private $_nom;
                                        	private $_forcePerso;
                                        	private $_degats;
                                        	private $_niveau;
                                        	private $_experience;
                                        
                                        	// Un tableau de données doit être passé à la fonction (d'où le préfixe "array").
                                        	public function hydrate(array $donnees)
                                        	{
                                        		foreach ($donnees as $key => $value)
                                        		{
                                        			// On récupère le nom du setter correspondant à l'attribut.
                                        			$method = 'set'.ucfirst($key);
                                        
                                        			// Si le setter correspondant existe.
                                        			if(method_exists($this, $method))
                                        			{
                                        				// On appelle le setter.
                                        				$this->$method($value);
                                        			}
                                        		}
                                        	}
                                        
                                        	// Liste des getters
                                        
                                        	public function id() { return $this->_id; }
                                        	public function nom() { return $this->_nom; }
                                        	public function forcePerso() { return $this->_forcePerso; }
                                        	public function degats() { return $this->_degats; }
                                        	public function niveau() { return $this->_niveau; }
                                        	public function experience() { return $this->_experience; }
                                        
                                        	// Liste des setters
                                        
                                        	public function setId($id)
                                        	{
                                        		// On convertie l'argument en nombre entier.
                                        		// Si c'en était déjà un, rien ne changera.
                                        		// Sinon, la conversion donnera le nombre 0 (à quelques exceptions près, mais rien d'important ici).
                                        		$id = (int) $id;
                                        
                                        		// On vérifie ensuite si ce nombre est bien strictement positif.
                                        		if(id > 0)
                                        		{
                                        			// Si c'est le cas, c'est bon, on assigne la valeur à l'attribut correspondant.
                                        			$this->_id = $id;
                                        		}
                                        	}
                                        
                                        	public function setNom($nom)
                                        	{
                                        		// On vérifie qu'il s'agit bien d'une chaîne de caractères.
                                            	if (is_string($nom))
                                            	{
                                            		$this->_nom = $nom;
                                            	}
                                        	}
                                          
                                        	public function setForcePerso($forcePerso)
                                        	{
                                        		$forcePerso = (int) $forcePerso;
                                            
                                            	if ($forcePerso >= 1 && $forcePerso <= 100)
                                            	{
                                        			$this->_forcePerso = $forcePerso;
                                        		}
                                        	}
                                          
                                        	public function setDegats($degats)
                                        	{
                                        		$degats = (int) $degats;
                                            	
                                            	if ($degats >= 0 && $degats <= 100)
                                            	{
                                        			$this->_degats = $degats;
                                            	}
                                        	}
                                          
                                        	public function setNiveau($niveau)
                                          	{
                                            	$niveau = (int) $niveau;
                                            
                                            	if ($niveau >= 1 && $niveau <= 100)
                                            	{
                                              		$this->_niveau = $niveau;
                                            	}
                                          	}
                                          
                                        	public function setExperience($experience)
                                        	{
                                        		$experience = (int) $experience;
                                        	    
                                        	    if ($experience >= 1 && $experience <= 100)
                                        	    {
                                        			$this->_experience = $experience;
                                        	    }
                                        	}
                                        }
                                        
                                        
                                        class PersonnagesManager
                                        {
                                        	private $_db; // Instance de PDO
                                        
                                        	public function __construct($db)
                                        	{
                                            	$this->setDb($db);
                                        	}
                                        
                                        	public function add(Personnage $perso)
                                        	{
                                        	    $q = $this->_db->prepare('INSERT INTO personnages(nom, forcePerso, degats, niveau, experience) VALUES(:nom, :forcePerso, :degats, :niveau, :experience)');
                                        
                                        	    $q->bindValue(':nom', $perso->nom());
                                        	    $q->bindValue(':forcePerso', $perso->forcePerso(), PDO::PARAM_INT);
                                        	    $q->bindValue(':degats', $perso->degats(), PDO::PARAM_INT);
                                        	    $q->bindValue(':niveau', $perso->niveau(), PDO::PARAM_INT);
                                        	    $q->bindValue(':experience', $perso->experience(), PDO::PARAM_INT);
                                        
                                        	    $q->execute();
                                        	}
                                        
                                        	public function delete(Personnage $perso)
                                        	{
                                        	    $this->_db->exec('DELETE FROM personnages WHERE id = '.$perso->id());
                                        	}
                                        
                                        	public function get($id)
                                        	{
                                        	    $id = (int) $id;
                                        
                                        	    $q = $this->_db->query('SELECT id, nom, forcePerso, degats, niveau, experience FROM personnages WHERE id = '.$id);
                                        	    $donnees = $q->fetch(PDO::FETCH_ASSOC);
                                        
                                        	    return new Personnage($donnees);
                                        	}
                                        
                                        	public function getList()
                                        	{
                                        	    $persos = [];
                                        
                                        	    $q = $this->_db->query('SELECT id, nom, forcePerso, degats, niveau, experience FROM personnages ORDER BY nom');
                                        
                                        	    while ($donnees = $q->fetch(PDO::FETCH_ASSOC))
                                        	    {
                                        	      $persos[] = new Personnage($donnees);
                                        	    }
                                        
                                        	    return $persos;
                                        	}
                                        
                                        	public function update(Personnage $perso)
                                        	{
                                        	    $q = $this->_db->prepare('UPDATE personnages SET forcePerso = :forcePerso, degats = :degats, niveau = :niveau, experience = :experience WHERE id = :id');
                                        
                                        	    $q->bindValue(':forcePerso', $perso->forcePerso(), PDO::PARAM_INT);
                                        	    $q->bindValue(':degats', $perso->degats(), PDO::PARAM_INT);
                                        	    $q->bindValue(':niveau', $perso->niveau(), PDO::PARAM_INT);
                                        	    $q->bindValue(':experience', $perso->experience(), PDO::PARAM_INT);
                                        	    $q->bindValue(':id', $perso->id(), PDO::PARAM_INT);
                                        
                                        	    $q->execute();
                                        	}
                                        
                                        	public function setDb(PDO $db)
                                        	{
                                        	    $this->_db = $db;
                                        	}
                                        }
                                        
                                        $perso = new Personnage([
                                          'nom' => 'Victor',
                                          'forcePerso' => 5,
                                          'degats' => 0,
                                          'niveau' => 1,
                                          'experience' => 0
                                        ]);
                                        
                                        $db = new PDO('mysql:host=localhost;dbname=tests', 'root', '');
                                        $manager = new PersonnagesManager($db);
                                            
                                        $manager->add($perso);
                                        ?>

                                        Ma base est bien nommée "tests" et la table "personnages"

                                        Merci :)

                                        edit :

                                        Petit changement j'ai activer les erreurs via un setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);

                                        et j’obtiens désormais ce genre d'erreur : "Warning: PDOStatement::execute(): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'nom' cannot be null"

                                        Je fait des recherches sur Google mais tout ce que j'arrive à comprendre c'est que 'nom' est vide et donc rien ne peut être insérer dans la BDD.

                                        Mais je ne sais pas pourquoi toute mes variables sont vide !

                                        Si quelqu'un pourrait m'aider à comprendre ce serait plutôt sympa :)

                                        Merci d'avance pour toute aide apporter ;)

                                        -
                                        Edité par m@rcus62 3 mai 2017 à 12:22:30

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          3 mai 2017 à 17:08:29

                                          Alors pour les variables vides, c'est parce que t'as zappé le constructeur de la classe Personnage, et pour les valeurs null, check tes setters (j'ai testé ton code et il me dit par ex que l'exp ne peut pas être null, et qd jvais voir le setter, effectivement ">=1", et quand je l'ai changé en 0 ça a été ajouté à ma bdd :-) 

                                          Astuce pour aider à comprendre les soucis, quand t'as une variable qui en contient d'autres (array ou $perso), fais "print_r($perso) ou var_dump;" pour voir ce qu'il y a dedans :) 

                                          bon courage

                                          -
                                          Edité par Karolyn 21 juillet 2017 à 19:16:06

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            3 mai 2017 à 18:24:55

                                            Merci pour ces explications, mais la fonction hydrate ne sert justement pas à sa ?

                                            parce que dans ce cas si je rajoute un constructeur la fonction hydrate ne sert plus, je me trompe?

                                            Je demande car d’après ce que j'ai compris la fonction hydrate sert à assigner les valeurs au différents setters, donc si l'hydratation sert à cela à quoi sert le constructeur?

                                            Désolé pour ces questions bêtes mais je débute en POO et c'est pour moi un autre monde... :p

                                            En tout cas merci pour ton aide ;)

                                            Edit : J'ai repris le cour et j'ai saisi la différence entre le constructeur et l'hydratation.

                                            Le constructeur sert à créer une représentation de l'objet tandis que l'hydratation va assigner les valeurs au différents setters (sa je l'avait compris :p), je vais pouvoir reprendre le cour ;)

                                            Merci à Karolyn pour son aide, mon exemple fonctionne ;)

                                            -
                                            Edité par m@rcus62 3 mai 2017 à 19:52:10

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              3 mai 2017 à 20:04:31

                                              T'inquiète, je suis récemment passée par là, je compatis :D 

                                              Dans ton code tu as défini une fonction "hydrate()". Le constructeur lui, utilise cette fonction (elle bosse pas toute seule quoi, dans la version que tu m'as donnée elle est pas exécutée... je m'exprime assez clairement? sinon dsl je réessaye :p)


                                              ps: j'avais pas vu la mise à jour du message dsl ^^ have fun! et de rien :)

                                              -
                                              Edité par Karolyn 3 mai 2017 à 20:07:06

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                5 mai 2017 à 19:46:38

                                                Bonjour à tous 

                                                Je suis le cour "programmez en orienté objet en php" et j'ai un problème au niveau de la partie frontend.
                                                Normalement je devrais avoir une page blanche sauf que j'ai ce qu'il y a sur l'image.

                                                Est ce que quelqu'un saurait d'où vient mon erreur ?
                                                Pour info les deux fichier en question sont à l'identique de ceux qu'il y a dans le cour.


                                                merci d'avance
                                                 

                                                Problème résolu, c'était une faute de frappe dans une class.

                                                Par contre maintenant j'ai ça:

                                                -
                                                Edité par 31s 6 mai 2017 à 17:28:41

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  11 mai 2017 à 10:12:49

                                                  Bonjour, je galère avec la création du microcms. 3ème fois que je le refait, les 2 autres ayant échouées.

                                                  Je refait de zéro, en essayant de trouver sont mes erreurs.

                                                  Déjà, je viens de réinstaller silex au bon endroit, et j'ai un point rouge dans les valises vendor->pimple->ext->pimple->tests et vendor->symfony->http-kernel->tests->fixtures->controller.

                                                  question : est-ce utile pour silex. Si oui, pourquoi a-t-on une erreur à l'installation, si non peut-on l'enlever (j'aime pas voir des points rouges, car on ne sais pas si cela vient d'une mauvaise manip ou d'autre chose.

                                                  2è question :

                                                  pourquoi utiliser les dossiers src, views, web à la place de model, views, controller. est-ce du à l'utilisation de silex? je sais, il s'agit de question peut-être simplettes, mais j'aime pas ne pas comprendre ce que je fait.

                                                  3é question : la redirection avec l’hôte virtuel est-elle obligatoire?car j'ai déjà pas mal galèré avec : les questions que je ne comprends pas dans cette création :

                                                  - le serverName dans certains tuto que je vois, ils mettent une extension du genre exemple.loc. d'où viens cette extension quand on est en local??


                                                  Merci d'avance.

                                                  Bon j'y retourne.

                                                  -
                                                  Edité par jissey 12 mai 2017 à 10:24:54

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    12 mai 2017 à 14:54:53

                                                    Salut tout le monde. 

                                                    J'ai une question sur Laravel5;   

                                                    Au fait je ne comprends pas comment exploiter le  "Elixir".  

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      15 mai 2017 à 11:33:01

                                                      hello

                                                      une chose que je comprends pas avec les virtual host : le ServerName : on met ce que l'on veut?

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        16 mai 2017 à 2:04:31

                                                        c'est le cahier des doléances ici, :)  j'en ai une petite..

                                                        Au chapitre l'héritage j'ai un message de type strict, en tapant ce code : 

                                                        <?php
                                                        class A
                                                        {
                                                          public function quiEstCe()
                                                          {
                                                            echo 'A';
                                                          }
                                                        }
                                                        
                                                        class B extends A
                                                        {
                                                          public static function test()
                                                          {
                                                          
                                                          }
                                                          
                                                          public function quiEstCe()
                                                          {
                                                            echo 'B';
                                                          }
                                                        }
                                                        
                                                        class C extends B
                                                        {
                                                          public function quiEstCe()
                                                          {
                                                            echo 'C';
                                                          }
                                                        }
                                                        
                                                        C::test();

                                                        celui ci c' est un copier coller du cour, je l'ai testé bien sur et même résultat.

                                                        Si je passe toutes les fonctions en static ça va niquel.

                                                        Ou est-ce que j'ai zappé un truc?

                                                        merci

                                                        -
                                                        Edité par -Dric- 16 mai 2017 à 4:35:00

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          18 mai 2017 à 18:58:55

                                                          Salut tous,

                                                          J'avoue que je suis pâs trop callé en php :

                                                          cette boucle affiche toujours que les identifiants n'existent pas quand bien meme il en Existe dans ma BDD. Help me please !

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            19 mai 2017 à 12:04:21

                                                            je dit peut-être une idiotie, mais pourquoi tu ne fais pas directement

                                                            if($reqconnexion){echo....

                                                            plutôt que de passer par un compteur?

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            MOOC Programmez en orienté objet en PHP

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            • Editeur
                                                            • Markdown