Aligner des numeros de commandes avec des status

SHEYPT -  
jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour à tous.

Je travaille actuellement sur un projet qui est donc de récupérer des commandes qui proviennent d'une base de donnée mssql.

J'affiche donc les numéros de commandes ainsi que si elles sont préparés ou non.

Je souhaiterais c'est pourvoir sur 3 lignes comme il est présent sur le screen , pouvoir mettre a coté de le nom de la commande afin que cela fasse quelque chose de propre et épuré

Voici mon code php et css : 

/*FONTS*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat%3Aital%2Cwght%401%2C300&display=swap');


body{
    background-color: black;
}

.list-column {
    column-count: 3;
    column-gap: 70px;
    padding-left: 0;
}


.cmdnum{
    font-family: 'Montserrat';
    color: white;
    font-weight: bold;
    font-size: 30px;
    margin-left: 40px;
    background-color: red;
}


.ENCOURS{
        font-family: 'Montserrat';
        color:orange;
            font-weight: bold;
                font-size: 30px;
                margin-left: 40px;


}

.PRETE{
        font-family: 'Montserrat';
    color: green;
        font-weight: bold;
        animation-duration: .8s;
    animation-name: clignoter;
    animation-iteration-count: infinite;
    transition: none;
        font-size: 30px;
        margin-left: 20px;



}
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="refresh" content="5" />
    <link rel="stylesheet" type="text/css" href="css/tests.css">
    <title></title>
</head>
<body>
    <center>
        <div class="TH">
            <br><br>
                    <ul class='list-column'>
                        <li><?php
                            $dsn="";
                            $user="";
                            $password="";
                            $conn=odbc_connect($dsn,$user, $password);

                            //REQUETES
                            $sql = <<<EOF
                            SELECT enc_id, enc_cmd_num, enc_paye, enc_prepared, enc_ext_ref, enc_heure_fab_deb, enc_heure_fab_fin, Client.cli_civilite,Client.cli_nom, Client.cli_prenom FROM Client RIGHT JOIN encaissement ON Client.cli_id = encaissement.enc_client WHERE enc_etat<>4 AND enc_date= '20221229' AND ((DATEDIFF(n,enc_heure_fab_fin, getDate()) < 3 AND enc_prepared <> 0) OR enc_prepared = 0) AND enc_emporte <> 1 ORDER BY encaissement.enc_heure_fab_deb ASC
                    EOF;
                            
                            $results = odbc_exec($conn,$sql);
       
                            while($resultrow = odbc_fetch_array($results)){ 
                            echo "<span class='cmdnum'>".$resultrow["enc_cmd_num"]."</span>" ; }


                        $results = odbc_exec($conn,$sql);
 
                        if( $results )
                        {
                            while($resultrow = odbc_fetch_array($results))
                            {
                                switch($resultrow['enc_prepared'])
                                {
                                    case 0:
                                        echo"<p class='ENCOURS'>EN PREPARATION<p/>\r \n";
                                        break;
                                    case 1:
                                        echo "<p class='PRETE'>COMMANDE PRÊTE<p/>\r\n";
                                        break;
                                }
                            }
                        }

                        ?>
                    </ul>
                        </li>           

2 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     

    Bonjour,

    Déjà, au lieu de faire des "paragraphes" pour tes status ( avec la balise <p> ) continue sur du SPAN.

    Ensuite, ta boucle doit générer un LI pour chaque ligne de résultat. Là, tu mets tous les résultats dans le même LI .. ce qui n'a aucun sens.

    Et enfin il te suffit de jouer avec le css ( et l'attribut width ) pour mettre tes spans (pour chaque LI ) côte à côte.


    0
  2. SHEYPT
     

    "Et enfin il te suffit de jouer avec le css ( et l'attribut width ) pour mettre tes spans (pour chaque LI ) côte à côte."

    Je comprend pas ce que tu veux dire par la..

    Mais concernant la balise j'en est pris note et j'ai modifié

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="refresh" content="5" />
        <link rel="stylesheet" type="text/css" href="css/testsss.css">
        <title></title>
    </head>
    <body>
        <center>
            <div class="TH">
                <br><br>
                        <ul class='list-column'>
                                <?php
                                $dsn="";
                                $user="";
                                $password="";
                                $conn=odbc_connect($dsn,$user, $password);
    
                                //REQUETES
                                $sql = <<<EOF
                                SELECT enc_id, enc_cmd_num, enc_paye, enc_prepared, enc_ext_ref, enc_heure_fab_deb, enc_heure_fab_fin, Client.cli_civilite,Client.cli_nom, Client.cli_prenom FROM Client RIGHT JOIN encaissement ON Client.cli_id = encaissement.enc_client WHERE enc_etat<>4 AND enc_date= '20221229' AND ((DATEDIFF(n,enc_heure_fab_fin, getDate()) < 3 AND enc_prepared <> 0) OR enc_prepared = 0) AND enc_emporte <> 1 ORDER BY encaissement.enc_heure_fab_deb ASC
                        EOF;
                                
                                $results = odbc_exec($conn,$sql);
           
                                while($resultrow = odbc_fetch_array($results)){ 
                                echo "<ul><span class='cmdnum'>".$resultrow["enc_cmd_num"]."</span></ul>" ; }
    
                            $results = odbc_exec($conn,$sql);
     
                            if( $results )
                            {
                                while($resultrow = odbc_fetch_array($results))
                                {
                                    switch($resultrow['enc_prepared'])
                                    {
                                        case 0:
                                            echo"<li><span class='ENCOURS'>EN PREPARATION</span></li>\r \n";
                                            break;
                                        case 1:
                                            echo "<li><span class='PRETE'>COMMANDE PRÊTE</span></li>\r\n";
                                            break;
                                    }
                                }
                            }
    
                            ?>
                        </ul>
                            </li>           
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       

      Tu as déjà un UL .. pourquoi en remets tu un dans ta boucle ?

      Comprends tu le fonctionnement du html  et comment on créé une liste  avec ??

      En gros :

      Un UL

      Puis ta boucle

       LI

       Tes deux spans

      Fermeture du LI

      Fin de la boucle

      Fermeture du UL

      0