Mettre couleur dans mon echo [Résolu]

guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention - 11 nov. 2010 à 15:23 - Dernière réponse : guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention
- 14 nov. 2010 à 10:43
Bonjour a tous,

je souhaiterai mettre de la couleur dans mon echo, mais je n'y arrive pas

J'ai une parse error voici mon bout de code:

<?php
    
    
    while ($ligne = mysql_fetch_object($result))
    {
    echo"<tr><td> ".$ligne->Clodo." </td><td> ".$ligne->Mini." </td><td> ".$ligne->Fightvalue." </td><td>".$ligne->Probabilite."</td></tr>";
    }
    
    
    ////////////////////////////////////////////////////////////////////////////////
    
    }else if($filtre == "perdant"){

    
    $query = "SELECT Clodo,Mini,Fightvalue,Probabilite FROM stats WHERE Probabilite='Perdant' ORDER BY Clodo ";
    $result = mysql_query($query) or die('Erreur SQL !
'.$result.mysql_error());
    
    ?>


Merci de votre aide
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention - 13 nov. 2010 à 13:40
3
Merci
J'ai résolu mon pb hier mais merci quand meme

Merci guilstunt 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de guilstunt
kohntark 3708 Messages postés lundi 5 juillet 2004Date d'inscription 27 avril 2012 Dernière intervention - 11 nov. 2010 à 15:35
0
Merci
Salut,

J'ai une parse error voici mon bout de code

Lorsque l'on poste ici on est censé donner un minimum de détail. En l'occurrence on donne le message d'erreur complet, on matérialise clairement la ligne incriminée, ...
Cela permet dans bien des cas de tout de suite trouver l'erreur.

echo '<tr><td>'.$ligne->Clodo.'</td><td>'.$ligne->Mini.'</td><td>'.$ligne->Fightvalue.'</td><td>'.$ligne->Probabilite.'</td></tr>';


Cordialement,

Kohntark -
Commenter la réponse de kohntark
guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention - 11 nov. 2010 à 15:50
0
Merci
Ok merci.

Maintenant je n'ai plus d'erreur mais ce n'est toujours pas ecrit en rouge

Je viens de changer mon code par celui ci

 echo '<tr><td>'.$ligne->Clodo.'</td><td>'.$ligne->Mini.'</td><td>'.$ligne->Fightvalue.'</td><td>'.$ligne->Probabilite.'</td></tr></style>';


Je n'ai pas d'erreur mais ce n'est toujours pas écrit en rouge
Commenter la réponse de guilstunt
neigedhiver 2492 Messages postés jeudi 30 novembre 2006Date d'inscription 14 janvier 2011 Dernière intervention - 11 nov. 2010 à 18:43
0
Merci
Salut,

Il conviendrait sûrement de respecter les standards, si on souhaite que le navigateur fasse ce qu'on attend.
En l'occurrence, il est strictement interdit de placer une balise ou autour d'une balise <tr> ou <td>
Ces balises ( et ) se placent A L'INTERIEUR de la balise <td> :

echo '<tr>
    <td>'.$ligne->Clodo.'</td>
    <td>'.$ligne->Mini.'</td>
    <td>'.$ligne->Fightvalue.'</td>
    <td>'.$ligne->Probabilite.'</style></td>
</tr>';


Evidemment, il est recommandé d'utiliser des feuilles de style, la balise font étant dépréciée. Deux possibilités un peu plus sympas :

Le style directement dans la balise td (style étant un attribut aui va bien pour la balise td) :
echo '<tr>
    <td style="color: red;">'.$ligne->Clodo.'</td>
    <td style="color: red;">'.$ligne->Mini.'</td>
    <td style="color: red;">'.$ligne->Fightvalue.'</td>
    <td style="color: red;">'.$ligne->Probabilite.'</td>
</tr>';


Avec une feuille de style
La feuille de style :
<style>
.red {color: red}
</style>

Le code qui affiche le tableau :
echo '<tr>
    <td class="red">'.$ligne->Clodo.'</td>
    <td class="red">'.$ligne->Mini.'</td>
    <td class="red">'.$ligne->Fightvalue.'</td>
    <td class="red">'.$ligne->Probabilite.'</td>
</tr>


Là j'utilise une classe (red) qui n'a que la couleur de définie, mais on peut appliquer une classe à tout le tableau (dont la couleur sera héritée par les balises éléments enfants, donc y compris <td>). Bref, c'est qu'un exemple à adapter au cas particulier.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention - 11 nov. 2010 à 21:34
0
Merci
J'ai completement changer mon code dans l'apres midi, mon probleme est quasiment résolu .

En fait j'ai 4 filtres, 1 pour les combats "gagnant" donc affichage en vert
1 autre pour les combats "perdant"donc affichage en rouge,
1 autre pour les combats "inconnu" donc affivhage en gris
Et un dernier pour afficher tous les combats.

Je bloque sur le dernier pour que ca affiche tous les combats suivant la probabilité avec les couleurs adéquates. Je n'arrive pas a afficher les 3 couleur en meme temps dans mon tableau

<?php

// Fonction pour construire une table à partir des résultat de la requête
function buildClodoTable($where= '', $style='') {

    // Ajouter la clause where si définie (par défaut, tout le temps)
    if ($where!='') $where = ' WHERE '.$where;

    // Construire la requete
    $query = "SELECT Clodo,Mini,Fightvalue,Probabilite FROM stats {$where} ORDER BY Clodo";
    
    // Executer la requete
    $result = mysql_query($query);
    
    if ($result==false) {
        return 'Une erreur est survenue lors de l\'exécution de la requête !';
    }
        
    $lines = '';
    while ($row = mysql_fetch_array($result)) {
        $lines .= '
    <tr style="'.$style.'">
        <td>'.$row['Clodo'].'</td>
        <td>'.$row['Mini'].'</td>
        <td>'.$row['Fightvalue'].'</td>
        <td>'.$row['Probabilite'].'</td>
    </tr>';
    }
    
    if ($lines=='') {
        return 'Aucun resultat dans la table !';
    }
    
    return '
 Nom clodo  |
Pts Mini |
Pts maxi |
Probabilité |
'.$lines.'
';

}

// Si on a un filtre
if (isset($_POST['sub_filtre']) AND isset($_POST['filtre'])) {

    $where  = '';http://www.siteduzero.com/forum-83-578391-p1-mettre-en-cache-les-messages-de-mon-forum.html
    $style = '';
    switch ($_POST['filtre']) {
        
        case 'perdant':
            $where = "Probabilite='Perdant'";
            $style = 'background-color:red';
            break;
            
        case 'gagnant':
            $where = "Probabilite='Gagnant'";
            $style = 'background-color:rgb(35,248,40)';
            break;
    
        case 'inconnu':
            $where = "Probabilite='Inconnu'";
            $style = 'background-color:gray';
            break;
            
        case 'tout':
            $where = "Type='Adversaire'";
            $style= ???????;
break;
    }
    
    //Construire le €tableau à partir du résu'ltat de la requête
    $table = buildClodoTable($where, $style);
    
    echo $table;
    
    ///////////////////////////////////////////////////////////////////////////////

// Si le filtre n'a pas été envoyé
} else {


}
?>


Merci
Commenter la réponse de guilstunt
neigedhiver 2492 Messages postés jeudi 30 novembre 2006Date d'inscription 14 janvier 2011 Dernière intervention - 13 nov. 2010 à 13:07
0
Merci
Commence par afficher les erreurs qui se produisent :
<?php
error_reporting(E_ALL & E_STRICT);
?>


Cette ligne, elle aurait pas un problème ?
$where = '';http://www.siteduzero.com/forum-83-578391-p1-mettre-en-cache-les-messages-de-mon-forum.html</code>


--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
neigedhiver 2492 Messages postés jeudi 30 novembre 2006Date d'inscription 14 janvier 2011 Dernière intervention - 13 nov. 2010 à 19:49
0
Merci
Surtout, garde toi bien de dire quel était le problème et comment tu l'as résolué, si jamais quelqu'un s'interroge, il ne faut surtout pas l'aider.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
guilstunt 52 Messages postés jeudi 11 février 2010Date d'inscription 1 mars 2016 Dernière intervention - 14 nov. 2010 à 10:43
0
Merci
Je n'etais devant mon pc hier donc je ne pouvais pas poster mon code

J'ai changer le code

voici le nouveau code

<?php

// Fonction pour construire une table à partir des résultat de la requête
function buildClodoTable($where= '') {

    // Ajouter la clause where si définie (par défaut, tout le temps)
    if ($where!='') $where = ' WHERE '.$where;

    // Construire la requete
    $query = "SELECT Clodo,Mini,Fightvalue,Probabilite FROM stats {$where} ORDER BY Clodo";
 
    // Executer la requete
    $result = mysql_query($query);
 
    if ($result==false) {
        
    }
     
    $lines = '';
    while ($row = mysql_fetch_array($result)) {
   
       switch ($row['Probabilite']) {
        case 'Perdant': $style = 'background-color:red'; break; 
        case 'Gagnant': $style = 'background-color:rgb(35,248,40)'; break;
        case 'Inconnu': $style = 'background-color:rgb(199,199,199)'; break;
        default: $style= ''; break;
    }
   
        $lines .= '
    <tr style="'.$style.'">
        <td>'.$row['Clodo'].'</td>
        <td>'.$row['Mini'].'</td>
        <td>'.$row['Fightvalue'].'</td>
        <td>'.$row['Probabilite'].'</td>
    </tr>';
    }
 
    if ($lines=='') {
        return 'Aucun resultat dans la table !';
    }
 
    return '
 Nom clodo  |
Pts Mini |
Pts maxi |
Probabilité |
'.$lines.'
';

}

// Si on a un filtre
if (isset($_POST['sub_filtre']) AND isset($_POST['filtre'])) {

    $where  = '';
   
    switch ($_POST['filtre']) {
        case 'perdant': $where = "Probabilite='Perdant'"; break;
        case 'gagnant': $where = "Probabilite='Gagnant'"; break;
        case 'inconnu': $where = "Probabilite='Inconnu'"; break;
        case 'tout': $where = "Type='Adversaire'"; break;
    }
 
    //Construire le tableau à partir du résultat de la requête
    $table = buildClodoTable($where);
 
    echo $table;
 
    ///////////////////////////////////////////////////////////////////////////////

// Si le filtre n'a pas été envoyé
} else {


}
?>
Commenter la réponse de guilstunt

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.