CSS et php

Bonjour,

Je suis en train de faire un formulaire pour mon site et j'aimerais pouvoir mettre les messages d'alertes d'une couleur rouge. (comme le non-remplissage d'un champ par exemple)
Ces messages s'affichent avec des echos, aussi j'ai pris soin de les mettre dans une balise <p>.

echo"<p> Veuillez saisir tous les champs</p>";


Dans le CSS j'ai fais en sorte que les "p" doivent être de couleur rouge. Mais ça ne marche pas, quelqu'un aune idée?

6 réponses

Résumé de la discussion

Plusieurs échanges portent sur l'affichage des messages d'alerte en rouge dans un formulaire HTML généré par echo, alors que le texte est dans des balises p et doit être stylé par CSS. La solution préconisée est d'attribuer une classe au paragraphe et de définir une règle CSS pour rouge, par exemple

...

et .ta_classe { color: red; }. Des réponses évoquent des facteurs tels que le chargement du CSS ou des interactions avec du PHP, mais l'essentiel reste d'assurer que la CSS est bien chargée et appliquée au HTML. Pour éviter les confusions futures, vérifier les chemins vers la feuille CSS et tester l'affichage dans un navigateur indépendant permet d'isoler rapidement les erreurs et de valider l'application du style.

Bobot (l’IA à votre service)
  1. Essayez ca :

    <p class="ta_classe">Veuillez saisir tous les champs</p>

    et dans le css

    .ta_classe {color: red;}

    BRGR Media - Développement d'applications mobiles multi-plateformes et réalité augmentée
    3
    1. Modérateur
      pour faire "court":
      - php : prog
      - css : look
      suffit ensuite de jouer avec les deux ..
      0
      1. Contributeur
        Ton css qui colle pas? Est-ce que le début de ta page appelle le css.. dans le header?
        0
        1. bah dans ton css :

          p.alert { color: red; }


          et dans ton php :

          echo '<p class="alert"> Veuillez saisir tous les champs</p>';


          ce qui donne :

          index.php

          <html lang="fr">
          <head>
          <style type="text/css">
          <!--
          p.alert { color: red; }
          //-->
          </style>
          </head>
          <body>
          <? echo '<p class="alert"> Veuillez saisir tous les champs</p>'; ?>
          </body>
          </html>


          ????? canarder ?????
          Le Renard qui règne sur le WEB : Firefox
          0
          1. Merci pour les réponses, en faite je sais faire ce que vous avez proposé en CSS (enfin pas entièrement la preuve je plante encore...) mais je n'ai pas réussi et c'est ma faute parce que je n'ai pas tout détaillé, alors accrochez vous:

            j'ai fais une page qu'on va appeler "page.php" cette page contient tout ce qui est html (le formulaire entre autre) et le CSS est inclut dans le header.

            Pour pas faire un gros bordel j'ai fais une autre page qui contient tout le code php, on va l'appeler "code.php". C'est celle ci qui contient les différents tests pour le formulaire et les requêtes sql (et les fameux messages d'erreurs echo avec les <p> dedans). Dans cette page je n'ai pas lié le CSS dans le header

            Dans page.php je fais
            include('code.php');

            et malgré les
            <p class="alert">
            et mon css:
            .alert{color: #ff0000;}

            Je n'ai toujours pas mes messages en rouge...
            Faut-il que je lie le CSS à "code.php" ou je me suis planté ailleurs?
            0
            1. Contributeur
              Balance tout ton code, on va faire le tri ;)
              0
          2. Contributeur
            Bonjour,

            
            echo"<p><font color='red'> Veuillez saisir tous les champs </font></p>";
            
            


            Tu peux aussi tenter de mettre les <p> à l'extérieur du PHP, comme ceci:

            
            ?><p><?php echo " Veuillez saisir tous les champs "; ?></p><?php
            
            

            -4
            1. Je vois pas ce que ça change ton deuxième cas...
              Dans les deux cas, le code html envoyé au navigateur reste le même (excepté l'utilisation de la balise, devenu obsolète, <font> dans le premier cas)
              0
            2. Contributeur
              Non, cela change tout!
              La première solution est une solution de secours, font est obsolète mais c'est mieux que rien.

              La deuxième permet de ne pas passer par le PHP qui peut poser des problèmes avec le CSS comme le cas ici présent. Il m'est arrivé d'avoir du CSS qui n'est pas pris en compte lorsque je passe par PHP et dont le problème est résolu en repassant en HTML.
              0
            3. Le PHP est géré côté serveur et le html/css côté client.

              Explique moi en quoi l'un interfère sur l'autre.
              0
            4. Contributeur
              +1 Arthezius
              En quoi ça change la source de la page?
              0
            5. Contributeur
              Je l'ignore mais chez moi, cela fonctionner en HTML, pas en PHP... savoir pourquoi m'indiffère complètement, le fait est que c'était le cas.
              Je donne juste la solution qui m'a permis de résoudre mon problème... peut-être que cela l'aidera, peut-être pas.
              0