Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/12/2011, 14h13   #1
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Par défaut Affichage d'une image spécifiée selon 2 champs date et date du jour

Bonjour,

J'ai 3 images old.png / new.png et perim.png, dans ma table j'ai deux champss "date_du" et "date_au", comment faire pour affiché une des images selon la date explication:

Exemple 1:
Nous sommes le 27/12/11
Date_du 26/12/11
Date_au 28/12/11
Je doit affiché l'image nouv.png

Exemple 2:
Nous sommes le 27/12/11
Date_du 24/12/11
Date_au 26/12/11
Je doit affiché l'image perim.png

Exemple 3:
Nous sommes le 27/12/11
Date_du 29/12/11
Date_au 30/12/11
Je doit affiché l'image proch.png

en faite cela :

Citation:
Si date_du & date_au sont egal à ce jour m'afficher l'image nouv.png
Si date_du & date_au sont inférieur à ce jour m'afficher l'image perim.png
Si date_du & date_au sont superieur à ce jour m'afficher l'image proch.png
J’espère avoir été le plus clair possible

Merci de vos lumières car la j'avoue ne pas savoir ou commencé.
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2011, 18h51   #2
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Bon ya pas foule, apparement se serai avec "mktime" http://php.net/manual/fr/function.mktime.php par contre je ne voit pas comment l'inclure dans mon script déjà présent :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
 
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'consignes';
 
require('pages/fonctions_dates.php');
 
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
 
  $select = 'SELECT * FROM tb_clients_sites c
INNER JOIN tb_consignes_temp s ON s.clients_sites_id = c.idclients_sites
GROUP BY c.clients_sites
ORDER BY c.clients_sites';
 
 
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
 
 
if($total) {
   --------------------- -------------------------
   ------- MON TABLEAU ICI ---------------------
    --------------------- -------------------------
}
else echo 'Pas d\'enregistrements dans cette table...';
 
mysql_free_result($result);
 
?>
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2011, 20h49   #3
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Re

Fais des recherches du genre "MySQL select switch case" (grosso modo), tu devrais trouver des infos/exemples.

Juste un exemple :
Code sql :
1
2
3
4
5
6
7
8
9
10
11
 
SELECT un_id,
CASE
WHEN NOW() > date_du
THEN "nouv.png"
WHEN NOW() < date_au
THEN "perim.png"
WHEN NOW() > date_du AND NOW() < date_au
THEN "proch.png"
END AS "mon_image"
FROM une_table
Le champ à exploiter sera -> "mon_image".
(Les conditions des case sont pour exemple (la fatigue ), donc à adapter).
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2011, 22h18   #4
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Merci a toi je fonce trouvé cela
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2011, 20h47   #5
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Malgré de nombreuses recherches et de nombreuses lectures (suite à ton aide) je ne trouve pas comment faire cette choses.
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2011, 23h07   #6
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 462
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 462
Points : 2 552
Points : 2 552
Envoyer un message via Skype™ à rawsrc
Bonsoir,
L'approche de RunCodePhp est très bonne, je te propose une autre alternative :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
 
$sql  = 'SELECT DATE_FORMAT(date_du, "%Y%m%d"), DATE_FORMAT(date_au, "%Y%m%d") FROM uneTable';
$exec = mysql_query($sql);
 
$data = array();
$now  = date('Ymd') * 1;
 
while($row = mysql_fetch_assoc($exec)) {
   if ($now < $row['date_du']) {
      $row['image'] = 'proch.png';
   }
   else
   if ($now > $row['date_au']) {
      $row['image'] = 'perim.png';
   }
   else {
      $row['image'] = 'nouv.png';
   }
   $data[] = $row;
}
 
?>
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 06h50   #7
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Citation:
Envoyé par rawsrc
je te propose une autre alternative
Elle est théoriquement meilleure

Ca m'a un peu dérangé de proposer ce code, car l'alternative (la logique) dans la requête se base en partie sur des éléments de vues, des images.

Dans un concept (ou design patern) comme MVC (Model View Controller), il n'est théoriquement pas correcte ou judicieux de mélanger des données de type vue ou modèle.

La raison est simple : Si un jour on renomme une des images, voire en supprimer une, c'est la requête SQL qui tombe à l'eau.
Ca peut être un vrai casse-tête de déboguer le code.

Il est peut plus simple, voir plus logique de faire cette alternative au niveau de la vue, ou du controller.

De plus, si on estime que le risque est assez important que ces images soient renommer ou supprimer un jour, on peu toujours rajouter une petite sur-couche de code, comme vérifier l’existence des ces fichiers (file_exist()), et générer une erreur au cas où une n'existerait pas (genre trigger_error()).
Grosso modo, on s'aide soit même à déboguer plus facilement/rapidemment son code.


Citation:
Malgré de nombreuses recherches et de nombreuses lectures (suite à ton aide) je ne trouve pas comment faire cette choses.
Il n'y avait pas vraiment besoin de rechercher d'autres tutos, j'ai dis ça juste pour que tu trouve de plus amples exemples ou explications pour mieux comprendre comment ça marche.
Fallait juste adapter un peu au niveau des 3 conditions.

Un case en SQL fonctionne de la même manière qu'un switch case en Php, ce n'est que des alternatives, la logique est la même, c'est comme des successions de if | else if | else.
En résumer, ce n'est qu'une question de logique pure et dure (faut pas chercher plus compliqué que cela est).


Mais exploite plutôt le code de rawsrc, pour les raisons que j'ai évoqués précédemment.

Ceci dit, en te basant sur le code de rawsrc (sa logique), essai de rectifier/tranposer les conditions de mon code au niveau du SQL, c'est un bon exercice
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 06h56   #8
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Merci à vous deux je regarde cela

Edition:

En faite le truc que je ne comprend pas surtout au niveau du fonctionnement (je n'ai pas cherché de tutos ou de scripts tous fait, j'explique :

Citation:
J'ai un tableau :

CLIENT | DATE DERNIÈRE CONSIGNE | STATUT | LIRE

Celui-ci regroupe tous mes clients de la base, la date de la dernière consigne ajoutée, le statut d'une des consignes en cours (avec les fameuses images) et un lien menant vers tous les consignes du client choisi.

Je ne comprend pas comment faire pour mettre une des images selon le statut d'une des dates d'une consigne se trouvant dans le lien.

Citation:
Pour faire simple :
1/ Si l'icone est vert (nouv.png) , cela veut dire qu'il y a une consigne ayant pour période la date de ce jour et qu'il faut se bougé les fesses pour les lires
2/ Si l'icone est rouge (perim.png) une des consigne est périmé et donc à archivé.
3/ Si l'icone est grisé (proch.png) consigne avec des dates qui arrivent.
Voila j’espère avoir été clair.
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 07h45   #9
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Citation:
Je ne comprend pas comment faire pour mettre une des images selon le statut d'une des dates d'une consigne se trouvant dans le lien.
Si je comprends bien, ici tu rajoute aux conditions une nouvelle donnée : un statut.
A savoir que tu ne l'avais pas évoqué.

Si, pour afficher la bonne image il faut non seulement tenir compte des 2 dates (du - au) mais aussi de la valeur du statut, il faudrait rajouter cette donnée dans la requête (le SELECT), pour après, l'exploiter dans les alternatives.

(A savoir que plus il y aura de paramètres à tenir compte, plus il y aura d'alternatives).

Quelle valeur peut avoir ce statut ? 0 ou 1 ?
Qu'est ce qu'il faut faire (ou afficher comme image) selon ces date et statut ?


Si tu parviens à bien exprimer toutes les conditions (comme ton 1er post), normalement le Php devrait facilement se transposer.


Citation:
CLIENT | DATE DERNIÈRE CONSIGNE | STATUT | LIRE
Ici on ne vois plus ces 2 date que tu avais (date_du, date_au), mais qu'une seule date.
Est-ce normal ?

A savoir que, (selon ce modèle de Bdd ci-dessus), s'il y a plusieurs date de consigne pour un même client + même statut + lire (les 3 réunis, j'insiste), alors on aurait une relation 1,n sur cette donnée là, par conséquent on peu envisager de sortir cette donnée de cette table pour créer une table dédiée (genre consigne_client).

Par la suite ça peu facilité les requête SQL pour rechercher la bonne date de consigne selon telle ou telle condition.

Mais c'est pure réflexion, faut voir.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 07h52   #10
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Salut à toi

Quand je parle de Statut c'est en faite le nom de la colonne qui correspond à l'affichage d'une des 3 images .

Citation:
Qu'est ce qu'il faut faire (ou afficher comme image) selon ces date et statut ?
Cela reprend le post 1 :

Citation:
Exemple 1:
Nous sommes le 27/12/11
Date_du 26/12/11
Date_au 28/12/11
Je doit affiché l'image nouv.png

Exemple 2:
Nous sommes le 27/12/11
Date_du 24/12/11
Date_au 26/12/11
Je doit affiché l'image perim.png

Exemple 3:
Nous sommes le 27/12/11
Date_du 29/12/11
Date_au 30/12/11
Je doit affiché l'image proch.png
Merci à toi
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 08h06   #11
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Citation:
Cela reprend le post 1 :
Ces 2 dates (date_du, date_au) seraient de ta propre vision ou approche, elles ne seraient pas présentes dans ta Bdd, ce qui pour nous fausse pas mal notre jugement, si c'est le cas bien sûr.

Faudrait éclaircir ce point là, car ça devient flou.

Est-ce que ceci est la réalité, ta structure de table :
Citation:
CLIENT | DATE DERNIÈRE CONSIGNE | STATUT | LIRE
Tu pourrais éventuellement récupérer/exporter cette structure via PhpMyAdmind, et la poster ici.


NB : J'ai rajouter quelques remarque dans mon post précédant, pas certain que tu l'ai lu, ça peut être une idée.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 08h17   #12
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
En effet c'est très brouillons parfois et je m'en excuse, pour plus de simplicité voici ma table qui je pense va éclaircire certains points :

Citation:
### tb_consignes ###
`idconsignes` => L'ID de la consigne
`datej` => Date de création de la consigne
`datec` => Date du contact avec le client pour donné la consigne
`date_du` => Date Début de la consigne
`date_au` => Date de Fin de la consigne
`consignes` ,=> La consigne
`clients_sites_id` => ID client via jointure
`idtypeconsignes` => ID Type de consigne via jointure
Concernant mon Tableau :
CLIENT | DATE DERNIÈRE CONSIGNE | STATUT | LIRE
ID CLIENT | datej | Image Statut | LIEN via ID

Requête pour faire mon tableau (en cours de refonte):

Code :
1
2
3
4
5
6
7
 
$sql = ' SELECT * 
FROM tb_clients_sites 
INNER JOIN tb_consignes ON (tb_clients_sites.idclients_sites =  tb_consignes.clients_sites_id )
INNER JOIN tb_types_consigne ON (tb_consignes.idtypeconsignes =  tb_types_consigne.idtypeconsignes) 
GROUP BY clients_sites
ORDER BY clients_sites';
Concernant le lien :
Ici toutes les consignes du client sélectionné via l'ID dans un tableau :

datej => Date de création
datec => Date du contact avec le client pour donné la consigne
date_du => Date Début de la consigne
date_au => Date de Fin de la consigne
consignes => La consigne

et cela par le nombre de consigne

Donc dans mon tableau j'aimerai affiché une des images en fonction des dates de consigne du client qui correspond a la ligne de mon tableau.

Code complet pour affichage tableau
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
<?php
 
include('conf.php');
require('pages/fonctions_dates.php');
 
$sql = ' SELECT * 
FROM tb_clients_sites 
INNER JOIN tb_consignes ON (tb_clients_sites.idclients_sites =  tb_consignes.clients_sites_id )
INNER JOIN tb_types_consigne ON (tb_consignes.idtypeconsignes =  tb_types_consigne.idtypeconsignes) 
GROUP BY clients_sites
ORDER BY clients_sites';
 
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
$total = mysql_num_rows($requete);
 
if($total) {
 
    echo '<center><table bgcolor="#FFFFFF" border="1" cellpadding="0" style="border-color:#999" width="800px">'."\n";
 
        echo '<td background="img/fdc.png" width="490" align="center"><b><u>CLIENT / SITE</u></b></td>';
        echo '<td background="img/fdc.png" width="130" align="center"><b><u>DER.CONSIGNE</u></b></td>';
        echo '<td background="img/fdc.png" width="67" align="center"><b><u>STATUT</u></b></td>';
        echo '<td background="img/fdc.png" "width="27" align="center"><b><u>LIRE</u></b></td>'; 
		    echo '<tr>';
 
 while($row = mysql_fetch_array($requete)) {
		    echo '<td bgcolor="#F9F9F9">'.$row['clients_sites'].'</td>';
        echo '<td bgcolor="#F9F9F9"><center>'.dateFR($row['datej']).'</center></td>';
        echo '<td><center><img src="img/proch.gif"></center></td>';
        echo '<td bgcolor="#F9F9F9"><center><a href=\'pages/consignes.php?id='.$row['idclients_sites'].'\', title=\'Consigne Permanente pour '.$row['clients_sites'].'\' rel=\'gb_page_center[900, 700]\'><img src="./img/c_perm.png"></a></center></td>';
		    echo '</tr>'."\n";
    }
 
	echo '</table>';
}
else echo 'Pas de consignes en cours ...';
 
mysql_free_result($requete);
 
?>

Voila je pense que toutes les données y sont Merci à toi.
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 08h49   #13
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Ok, c'est mieux d'avoir ça sous les yeux.

Question à tout hasard.
Je remarque que tu as un idtypeconsignes. Est ce que le type de consigne ne définirait pas la plage de date, une durée de consigne (date_du, date_au) ?

Ou dit autrement, est-ce obligatoire de définir (voir redéfinir) pour chaque consigne (donc à chaque fois) une plage de date ?

De mon coté j'ai tendance à penser que ce n'est pas la consigne qui définirait cette durée, mais le type.

Toujours est il que s'il y a moyen de ne pas avoir cette donnée là dans cette table, ça devrait facilité les choses.
Mais il faut en être certain, il suffit qu'il y ait 1 seule consigne, et là ce n'est plus bon (ton modèle est le bon).


Cependant, en admettant qu'il soit obligatoire d'avoir cette plage de date pour chaque consigne, on peu aussi envisager de ne pas définir 2 dates (date_du, date_au), mais une durée, comme un timestamp.
Comme mettre 1 jour, soit 86400 secondes (car un timestamp c'est en secondes).
Comme les comparaisons sont faites selon la date en cours, ça peu facilité les traitements.
Faut voir.


Mise à part tout ça, ta structure de table me semble correcte.
As tu essayer d'intégrer le code que t'as donné rawsrc ?
Entre autre ceci :
Code rawsrc :
DATE_FORMAT(date_du, "%Y%m%d") AS dateDu, DATE_FORMAT(date_au, "%Y%m%d") AS dateAu
(j'ai rajouté des alias, comme dateDu et dateAu).
(n'oublie pas que les alias ça facilite la création du code SQL)
Dans ton code ci-dessus, tu fais toujours un SELECT *
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 08h55   #14
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Merci à toi pour ta rapidité

Citation:
Je remarque que tu as un idtypeconsignes. Est ce que le type de consigne ne définirait pas la plage de date, une durée de consigne (date_du, date_au) ?
Alors pour "idtypeconsignes" , c'est juste une table qui me permet de définir le Type de consigne (provisoire et temporaire) je n'ai que : ID / type dans celle-ci

Citation:
Ou dit autrement, est-ce obligatoire de définir (voir redéfinir) pour chaque consigne (donc à chaque fois) une plage de date ?

De mon coté j'ai tendance à penser que ce n'est pas la consigne qui définirait cette durée, mais le type.

Toujours est il que s'il y a moyen de ne pas avoir cette donnée là dans cette table, ça devrait facilité les choses.
Mais il faut en être certain, il suffit qu'il y ait 1 seule consigne, et là ce n'est plus bon (ton modèle est le bon).
Chaque consignes à une date de début et de fin bien précise hormis les consignes Permanentes (ID 2) donc je pense que oui.

Citation:
(j'ai rajouté des alias, comme dateDu et dateAu).
(n'oublie pas que les alias ça facilite la création du code SQL)
Dans ton code ci-dessus, tu fais toujours un SELECT *
__________________
Comme j'ai dit (en cours de refonte) j'ai refait tous mon code cette nuit ensuite je m'attaque à ce que tu ma dit concernant les ID identique pour les jointures et les alias
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 09h08   #15
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 726
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 726
Points : 3 293
Points : 3 293
Citation:
Chaque consigne à une date bien précise donc je pense que oui
C'était à tout hasard. Comme c'est ainsi, alors c'est bon.

Citation:
Comme j'ai dit j'ai refait tous mon code cette nuit ensuite je m'attaque a ce que tu ma dit concernant les ID identique pour les jointures et les alias
Je dirais yapluka

Théoriquement tu as tous les éléments, entre l'ancien topic pour les alias et le code de rawsrc, tu devrais parvenir à produire le tableau que tu veux.



Juste par curiosité, si c'est pas indiscret, c'est quoi les consignes ?
Des bouteilles (eau, vin, ...), bouteilles de gaz, objets perdus ?
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 09h10   #16
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Bon ba je m'occupe du bib de ma fille et yaquacodéetsurtoutseprendrelatete merci pour ton aide ainsi qu'a rawsrc

Citation:
Juste par curiosité, si c'est pas indiscret, c'est quoi les consignes ?
Des bouteilles (eau, vin, ...), bouteilles de gaz, objets perdus ?
lol non pas encore enfin quoi que, je taff dans une boite de télésurveillance mobile et donc pas mal de consignes, pour l'instant on le fait sur excel mais pas vraiment pratique.
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 10h15   #17
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Re moi,

Après moultes et moultes essais je n'arrive pas a faire ce que je souhaite malgré l'aide que vous m'avez fournit... c'est grave ... j'en pête un cable
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 11h11   #18
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 462
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 462
Points : 2 552
Points : 2 552
Envoyer un message via Skype™ à rawsrc
Bonjour,

allez j'ai repris ton code, dépieutes le. Je te conseille fortement de séparer ta mise en page de tes données : déportes toute la mise en page dans un fichier .css tu y gagneras en lisibilité
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
 
include('conf.php');
require('pages/fonctions_dates.php');
 
$sql =
'  SELECT *, DATE_FORMAT(date_du, "%Y%m%d") AS dateDu, DATE_FORMAT(date_au, "%Y%m%d") AS dateAu
   FROM tb_clients_sites
      INNER JOIN tb_consignes ON (tb_clients_sites.idclients_sites =  tb_consignes.clients_sites_id )
      INNER JOIN tb_types_consigne ON (tb_consignes.idtypeconsignes =  tb_types_consigne.idtypeconsignes)
   GROUP BY clients_sites
   ORDER BY clients_sites';
 
$exec = mysql_query($sql, $cnx) or die(mysql_error());
 
$data = array();
$now  = date('Ymd') * 1;
 
while($row = mysql_fetch_assoc($exec)) {
   if ($now < $row['dateDu']) {
      $row['statut'] = 'proch.png';
   }
   else
   if ($now > $row['dateAu']) {
      $row['statut'] = 'perim.png';
   }
   else {
      $row['statut'] = 'nouv.png';
   }
   $data[] = $row;
}
 
if (empty($data)): ?>
<span>Pas de consignes en cours ...</span>
 
<?php else: ?>
   <center>
      <table bgcolor="#FFFFFF" border="1" cellpadding="0" style="border-color:#999" width="800">
         <thead>
            <tr>
               <th background="img/fdc.png" width="490" align="center"><b><u>CLIENT / SITE</u></b></th>
               <th background="img/fdc.png" width="130" align="center"><b><u>DER.CONSIGNE</u></b></th>
               <th background="img/fdc.png" width="67" align="center"><b><u>STATUT</u></b></th>
               <th background="img/fdc.png" width="27" align="center"><b><u>LIRE</u></b></th>
            </tr>
         </thead>
         <tbody>
            <?php foreach($data as $row): ?>
            <tr>
               <td bgcolor="#F9F9F9"><?php echo $row['clients_sites']; ?></td>
               <td bgcolor="#F9F9F9"><center><?php echo dateFR($row['datej']); ?></center></td>
               <td><center><img src="img/<?php echo $row['statut']; ?>"></center></td>
               <td bgcolor="#F9F9F9"><center><a href="pages/consignes.php?id=<?php echo $row['idclients_sites']; ?>" title="Consigne Permanente pour <?php echo $row['clients_sites']; ?>" rel="gb_page_center[900, 700]"><img src="./img/c_perm.png"></a></center></td>
            </tr>
            <?php endforeach; ?>
         </tbody>
      </table>
   </center>
<?php endif; ?>
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 12h04   #19
Invité régulier
 
Avatar de tyler94
 
Inscription : avril 2009
Messages : 120
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 120
Points : 7
Points : 7
Merci à toi tu m’hallucine la, mon CSS est fait mais je n'ai pas encore fini, concernant le code cela fonctionne a 2/3 truc pret :
- Mes consignes Permanente on des dates 0000/00/00 pour les deux champs mais la diode est verte.

Dans tous les cas un tres grand merci a toi

Edition: je sais pourquoi : J'ai enlevé la partie perim.gif car en faite celle ci n’était pas utile et cela fesais merdé le code apparement si je renome le perim.gif en proch.gif cela fonctionne de nouveau

Edition 2:
Ba non le 0000/00/00 des date me fait déconer le truc je vais regardé cela pour eclure cette date ou voir ne prendre en compte qu'a partir de la date du jour.

Dans tous les cas un grand merci a toi
tyler94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 13h26   #20
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 462
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 462
Points : 2 552
Points : 2 552
Envoyer un message via Skype™ à rawsrc
Citation:
Envoyé par tyler94 Voir le message
Edition 2:
Ba non le 0000/00/00 des date me fait déconer le truc je vais regardé cela pour eclure cette date ou voir ne prendre en compte qu'a partir de la date du jour.
Non, n'exclues rien, tu dois trouver pourquoi tu obtiens un 0000/00/00. Vérifies ta base de données et revérifie encore et encore le code php.
Testes ton sql en dehors du php, assures-toi que des données valides sont bien renvoyées.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h01.


 
 
 
 
Partenaires

Hébergement Web