Aligner des numeros de commandes avec des status

Fermé
SHEYPT - Modifié le 29 déc. 2022 à 16:02
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 mars 2025 - 29 déc. 2022 à 17:52

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>           
A voir également:

2 réponses

jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 mars 2025 4 740
29 déc. 2022 à 16:30

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

"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
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 mars 2025 4 740
29 déc. 2022 à 17:52

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