Se connecter / S'enregistrer
Votre question

tableau avec couleurs alternées php

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
20 Août 2006 18:44:11

bonjour
j'ai trouvé un script qui s'installe sur 3 pages, pour avoir des renseignements sur les visiteurs de mon site: une page log.php à faire appeler par une page de mon site, une page log_add.php qui reçoit les infos collectées par log.php et qui écrit dans la troisième page, log_data.htm, sous forme de tableau les infos sur le visiteur.
voila le code de log_add.php
  1. <?php
  2.  
  3. // Configuration.
  4.  
  5. $log_file = './log_data.htm'; // Location of log_data.htm file.
  6.  
  7. /******************************************************************************/
  8.  
  9. if ((is_file($log_file)) && (is_writable($log_file))) // Required permissions: -Read, +Write, -Execute.
  10. {
  11. // Obtain user details.
  12.  
  13. $inter_date = date('Y-m-d H:i:s');
  14. $user_ip_addr = empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['REMOTE_ADDR'] : $_SERVER['HTTP_X_FORWARDED_FOR'];
  15. $user_agent = $_SERVER['HTTP_USER_AGENT'];
  16. $user_referrer = $_SERVER['HTTP_REFERER'];
  17.  
  18. // Write user details to file.
  19.  
  20. $log_handle = fopen($log_file, 'a');
  21. flock($log_handle, LOCK_EX);
  22. fwrite($log_handle, '<tr>' . "\n" .
  23. '<td class="content">' . $inter_date . '</td>' . "\n" .
  24. '<td class="content">' . htmlentities((empty($user_ip_addr) ? 'Unknown' : $user_ip_addr), ENT_QUOTES) . '</td>' . "\n" .
  25. '<td class="content">' . htmlentities((empty($user_agent) ? 'Unknown' : $user_agent), ENT_QUOTES) . '</td>' . "\n" .
  26. '<td class="content">' . htmlentities((empty($user_referrer) ? 'Unknown' : $user_referrer), ENT_QUOTES) . '</td>' . "\n" .
  27. '</tr>' . "\n");
  28. flock($log_handle, LOCK_UN);
  29. fclose($log_handle);
  30. }
  31. else // There is a problem with the file!
  32. {
  33. echo $log_file . ' does not exist or is not accessible. Make sure the file is writable.';
  34. }
  35.  
  36. ?>


ce que j'aimerais, c'est mettre de façon alternée une couleur à chaque ligne, de façon à rendre plus lisible le tableau. mais comment faire?
j'attends vos réponses, mais je vous préviens que je n'y connais pas grand chose, que ce script je l'ai trouvé sur un autre site, et donc vous pouvez me parler comme à un débutant ;) 
merci

Autres pages sur : tableau couleurs alternees php

20 Août 2006 20:31:08

deux class en css

.class1
{
background-color:blue;
}
.class2
{
background-color:green;
}

et dans ton code suffit de jouer sur la conception dynamique de ton html avec php
Quelque chose du genre
<?php
for($i=0;$i<$nbrdeligne;$i++)
{
$chaine='<tr class="class'.($i%2==0)2?1.'"> // restant du code html
}

?>
20 Août 2006 21:58:52

ok
pour le css, pas de problème, mais le php... c'est pas mon truc!
je chercherai ça plus tard.
merci -;)
Contenus similaires
20 Août 2006 22:15:22

Tu comprend pas quoi à ceci ???

21 Août 2006 13:28:19

ben, où mettre le code, et la variable nbrdeligne, il faut la déclarer avant, dire à quoi elle correspond, non?
21 Août 2006 15:11:49

Citation :

ce que j'aimerais, c'est mettre de façon alternée une couleur à chaque ligne, de façon à rendre plus lisible le tableau. mais comment faire?


La balise pour les lignes dans un tableau c'est tr ...

La boucle que j'ai écrite c'est dans le cas ou tu as plusieurs fois le même traitements qui se fait , donc au lieu d'écrire pour chaque donnée la même chose , je ne le fais qu'une fois .

Le nombre de ligne , bah c'est un nombre à initialisé toi même .

J'ai pas lu ton script lors de ma première lecture étant donné qu'il a été pompé tel quel sur le net .

Bon maintenant à ce que je lis , c'est donc un truc de visiteur stocké dans un fichier. La partie de script que tu as posté ne fait qu'écrire dans le fichier et je ne vois rien concernant l'affichage donc je ne saurais certainement pas te dire ou tu dois le mettre .
21 Août 2006 15:27:20

ok merci. j'ai bidouillé un truc avec un compteur que je mets sur ma page, et qui a donc successivement des valeurs paires ou impaires. dans la page log_data.php j'ai rajouté le code suivant:
  1. $fichier = 'compteur.txt';
  2.  
  3. $fp = file($fichier);
  4.  
  5. $compteur = $fp[0] ;
  6.  
  7.  
  8. if ($compteur%2 == 0)
  9. {
  10. $couleur = '#deffff';
  11. }
  12. else
  13. {
  14. $couleur = '#7CC4F1';
  15. }

et à la ligne qui dit de mettre dans un tableau, j'ai mis
  1. '<tr bgcolor=' . $couleur . '>'

et ça marche :D 
mais comme on peut le voir, il n'y a pas de fermeture du fichier compteur.txt . j'ai essayé de mettre fclose($fichier); mais il y a une erreur! une idée?
21 Août 2006 15:31:00

Donne toujours l'erreur ca aiderait un peu ^^

Heu comme c'est écris la j'ai l'impression que tu auras sur toutes tes lignes la même couleur .
21 Août 2006 15:31:43

quelle erreurs stp ?

edit : arf, grillé.
21 Août 2006 15:33:15

Le warning que devrais être afficher sur ta page ^^

vinz42 aurais tu deux comptes ^^
21 Août 2006 15:42:30

lol.
Ouais, un pour poster des conneries et l'autre pour y répondre ;) 

Non, le grillé etait en rapport au fait que je demandait de donner l'erreur, et quand j'ai posté, j'ai vu que tu venais de poser la meme question.
21 Août 2006 16:08:33

l'erreur qui s'affiche est: Warning: fclose(): supplied argument is not a valid stream resource in /.../log_add.php on line 19
RiiMii, je n'y connais pas grand chose mais je peux t'expliquer ce pourquoi tu dis que ça marche pas, et en fait oui, ça marche: le code que j'ai rajouté est dans la page log_add.php; si le nombre est pair, une couleur va etre définie et écrite dans la ligne rajoutée au fichier log_data.htm; ainsi, à chaque fois qu'une ligne est rajoutée, elle a sa couleur(qui est la meme que celle de 2 lignes avant^^). la page .htm n'étant pas dynamique, les informations qui y figurent sont conservées en intégralité, et ne sont pas modifiées; seule une ligne est rajoutée. je remets le code avec la partie que j'ai ajoutée:
  1. <?php
  2.  
  3.  
  4. $fichier = 'compteur.txt';
  5.  
  6. $fp = file($fichier);
  7.  
  8. $compteur = $fp[0] ;
  9.  
  10.  
  11. if ($compteur%2 == 0)
  12. {
  13. $couleur = '#deffff';
  14. }
  15. else
  16. {
  17. $couleur = '#7CC4F1';
  18. }
  19. fclose($fichier);
  20.  
  21.  
  22.  
  23.  
  24. $log_file = './log_data.htm';
  25.  
  26.  
  27. if ((is_file($log_file)) && (is_writable($log_file))) // Required permissions: -Read, +Write, -Execute.
  28. {
  29.  
  30. $inter_date = date('Y-m-d H:i:s');
  31. $user_ip_addr = empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['REMOTE_ADDR'] : $_SERVER['HTTP_X_FORWARDED_FOR'];
  32. $user_agent = $_SERVER['HTTP_USER_AGENT'];
  33. $user_referrer = $_SERVER['HTTP_REFERER'];
  34.  
  35.  
  36. $log_handle = fopen($log_file, 'a');
  37. flock($log_handle, LOCK_EX);
  38. fwrite($log_handle, '<tr bgcolor=' . $couleur . '>' . "\n" .
  39. '<td class="content">' . $inter_date . '</td>' . "\n" .
  40. '<td class="content">' . htmlentities((empty($user_ip_addr) ? 'Unknown' : $user_ip_addr), ENT_QUOTES) . '</td>' . "\n" .
  41. '<td class="content">' . htmlentities((empty($user_agent) ? 'Unknown' : $user_agent), ENT_QUOTES) . '</td>' . "\n" .
  42. '<td class="content">' . htmlentities((empty($user_referrer) ? 'Unknown' : $user_referrer), ENT_QUOTES) . '</td>' . "\n" .
  43. '</tr>'."\n");
  44. flock($log_handle, LOCK_UN);
  45. fclose($log_handle);
  46. }
  47. else // There is a problem with the file!
  48. {
  49. echo $log_file . ' does not exist or is not accessible. Make sure the file is writable.';
  50. }
  51.  
  52. ?>
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS