Comment_faire

Résolu/Fermé
Bonjour, j'ai un probleme avec cette ligne
<body>
 <?php echo $nomrecu.echo "</br>".echo $message; ?>
</body>


Car elle m'affiche

".echo $message; ?>


Au lieu mon texte.

EDIT : Ajout des balises de code

6 réponses

  1. Modérateur
     <?php echo $nomrecu."</br>".$message; ?>
    

    1
    1. et donc l'erreur initiale est surtout de répeter les "echo".
      echo en php execute l'affichage d'une chaine de charactere https://www.php.net/manual/fr/function.echo.php

      ex:
      echo "lol"; //affiche lol
      echo 'lol'; //affiche lol
      
      
      $variable_a_afficher = "lol";
      echo $variable_a_afficher; //affiche lol
      
      $var1 = "lol";
      $var2 = "troll";
      $var3 = "pouet";
      echo $var1 . $var2 . $var3; // affiche loltrollpouet, le '.' "colle" les chaines les unes à la suite des autres (on dit "concatener").
      


      et pour finir, le petit tips au passage: utilise un ide comme atom ou vscode ou sublimetext, ils t'indiqueront si tu oublis des ';' ou des trucs du genre
      1
      1. Modérateur
        Il serait bien que tu comprennes que :

        (deuxième fois que je te le dis !! )
        TU DOIS UTILISER LES BALISES DE CODE POUR POSTER TON CODE SUR LE FORUM !!!!
        Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

        Tant qu'à faire, applique également les conseils donnés ici :
        https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

        Ensuite, pour éviter tout futur souci avec tes IF/ELSE il serait bien d'appliquer la norme PSR+2
        qui explique qu'un bloc IF/ELSE doit s'écrire de la façon suivante (avec les accolades ET les retours à la ligne )
        if ( condition ) {
           // traitement si vrai...
        
        }else{
          //traitement si faux
        }
        


        Tu peux aussi t'interesser à l'écriture ternaire pour remplacer les IF qui te servent à assigner des valeurs
        (comme le code que je t'avais donné... )

        Tu as également tendance à oublier des points-virgules.... il faudrait que tu sois capable de te relire !

        et enfin.. la variable c'est $_POST et non $_post !

        Bref.. après corrections :

        $nomrecu= !empty($_post['pseudo']) ? $_post['pseudo'] : NULL;
        $motdepasse= !empty($_POST['password']) ? $_POST['password'] : NULL; 
        
        
        if ($nomrecu=="az" && $motdepasse=="AZ"){
          echo "tu es le bienvenu";
        }else{ 
           echo "oups";
        }
        ?>
        


        1
        1. +1 pour les accolades
          0
        2. mais le seul probleme qui reste c'est que meme quand je mis le bon mot de passe et le bon pseudo il m'affiche le message comme quoi c'etait faux
          0
        3. donne ton code final, dans une balise de code stp (le bouton code juste au dessus, dans les outils de mise en page)
          0
        4. le label de ton html ne doit pas être pseudo et password. Par contre, pas de mise en page code (comme nous), plus de réponse. Ciao
          0
      2. Modérateur
        LES BALISES DE CODE ???!!!!!!!
        Tu ne sais pas lire ou tu as décidé de te moquer de nous ????

        On t'a demandé à plusieurs reprises d'utiliser les BALISES DE CODE pour poster TON CODE sur le forum !
        Donc... je supprime ton précédent message afin que tu puisses le reposter correctement !
        Ah... et au passage....
        Il faudrait aussi nous poster le code de ton formulaire HTML.
        Et commme je te l'ai également déjà demandé... de faire un print_r de la variable $_POST

        1
        1. <?php
          $nomrecu=$_post['pseudo']
          if($nomrecu=="ishak")
                 $message="tu est le bienvenu";
          else
                 $message="oups !";
          ?>
          <html>
          <head>
          <style>
          body{background:lightgrey;color:blue; font-size:35px;}
          </style>
          </head>
          <body>
          <?php echo $nomrecu."</br>".$message; ?>
          </body>
          </html>
          


          il m'affiche toujours ca
          ".$message; ?>

          EDIT : Ajout des balises de code
          0
          1. Modérateur
            Bonjour,

            Déjà, merci d'utiliser les balises de code pour poster ton code sur le forum.
            Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

            Ton fichier est bien un fichier .php ?

            Ensuite.... quelle est l'url de ta page ?
            Tu bosses en "local" sur ton ordi je suppose..... as tu bien installé un logiciel qui émule un serveur php ? ( wamp ? xampp ? easyphp ? Laragon ? )
            Et si oui.. passes tu bien par l'url "localhost" ?
            Car si tu as juste ouvert le fichier dans ton naviageur ( url du genre file://c:\truc\tonfichier.php ) ... c'est normal que ça ne marche pas .
            0
          2. merci a vous également
            mais j'arrive pas a bosser en local
            0
          3. Modérateur
            @ishakC'est bien ce que je te dis.... là .. tu ouvres ton fichier sans passer par le moteur PHP ...
            Tu dois installer un logiciel pour émuler un serveur php.
            Je te conseille d'utiliser LARAGON
            https://laragon.org/download/index.html

            Une fois sur ton ordi... tu places ton dossier "isn" dans le dossier www du laragon.
            Ensuite, tu ouvres ton navigateur et tu écris : http://localhost/isn/p-h-p/essaie/insecription2.php
            0
          4. enfin j'arrive mais il m'affiche
            Parse error: syntax error, unexpected 'if' (T_IF) in C:\xampp\htdocs\isn\p-h-p\essaie\insecfin.php on line 3
            0
          5. Modérateur
            @ishak
            <?php
            $nomrecu= !empty($_post['pseudo']) ? $_post['pseudo'] : NULL;
            $message= $nomrecu=="ishak" ? "tu est le bienvenu":"oups !";
            ?>
            
            0
        2. j'ai un problème de mise en page

          <html>
          <head>
          <style>
          body{background:#2D3433;color:#fd9404; font-size:35px;}
          </style>
          </head>
          <body>
          <h1>
          <form method="POST" action="insecription2.php">
          <input type="submit"value="se connecter"/>
          </form>
          Ou
          <form method="POSTE" action="mdp.htm">
          <input type="submit"value="s'inscrire";/>
          </form>
          </h1>
          </body>
          </html>

          moi je veux les mettre tous sur le meme ligne et au centre de la page sauf que là il me les affiche l'un au dessus de l'autre et le "ou" les separe
          0
          1. Modérateur
            1 - C'est une nouvelle question.... il faudrait donc que tu ouvres une nouvelle discussion

            2 - On t'a déjà indiqué à plusieurs reprises que tu DOIS UTILISER LES BALISES DE CODE .....
            Ce n'est quand même pas compliqué à comprendre !!!!!!!!!!

            3 - Cette question concerne de la mise en page ( du css ) et donc pas le PHP ... tu n'es pas dans le bon forum.

            Je ferme cette discussion.
            0
          2. Je sais pas moi c ma première fois avec ce site et j'ai un peu du mal a l'utiliser
            0