|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
sim100 WRInaute accro

Inscrit le: 02 Fév 2003 Messages: 1114 Localisation: Thailande
|
Posté le : Mar Mar 30, 2004 19:47 Sujet du message: execution automatique de pages: |
|
|
Bonjour
En fait, j'ai 2 petites questions, ce serait super si vous saviez
1) J'ai un site ou j'ai des personnes qui s'inscrivent. Via la partie admin, je peux voir la liste des inscrits. Mais je voudrais que dans le tableau que j'affiche, une ligne soit en gris et celle du dessous en gris plus clair, alternativement, afin que le tableau soit bien lisible.
Donc j'ai un boucle for (i=1, 1<20, i=i+1) { je reccupere le tableau }
Et je pensais faire dans le tableau: un si i est pair alors la ligne est grise, si i est impaire la ligne est grise plus clair. Mais comment savoir si i est paire opu impaire.
Je pensais: si i/2 donne un resultat entier...
Si qqun a une idee.
2) Lorsqu'un abonnement est fini, le compte de la personne a cette date doit se detruire automatiquement. Comment faire. Meme si personne n'est sur le site. Y a t'il un moyen?
Merci beaucoup pour tout  |
|
| |
|
 |
blman WRInaute accro

Inscrit le: 05 Sep 2003 Messages: 2747 Localisation: Nantes / Laval (France)
|
Posté le : Mar Mar 30, 2004 20:01 Sujet du message: execution automatique de pages: |
|
|
- Pour l'affichage "une ligne sur deux", tu a raison.
si round(i/2)==i/2 alors ma_ligne=gris
sinon ma_ligne=gris_clair
- pour le désabonnement, tu peux par exemple effectuer une tache "cron" qui va executer ta requete (DELETE FROM table WHERE (date_abonn+1an)>TODAY) (je ne me rappelle plus la requete exacte, je te la donne demain si personne ne te la donne d'ici là) |
|
| |
|
 |
sim100 WRInaute accro

Inscrit le: 02 Fév 2003 Messages: 1114 Localisation: Thailande
|
Posté le : Mar Mar 30, 2004 20:17 Sujet du message: MERCI |
|
|
Merci beaucoup, j'attends demain
Juste un petit detail: c'est quoi exactement round(i/2)==i/2? Cela renvoie quoi
Merci encore |
|
| |
|
 |
webrankinfo Invité
|
Posté le : Mar Mar 30, 2004 20:25 Sujet du message: execution automatique de pages: |
|
|
| Citation: |
Juste un petit detail: c'est quoi exactement round(i/2)==i/2? Cela renvoie quoi
|
et ben fais le avec i=11 et i=12 et tu comprendras par toi-même, c'est bien plus jouissif
sinon il y a l'opérateur modulo qui fait ça tout seul...
if (i%2 == 0){..} else {..}
si c'est du php tu penseras à mettre $i, pas i tout court  |
|
| |
|
 |
blman WRInaute accro

Inscrit le: 05 Sep 2003 Messages: 2747 Localisation: Nantes / Laval (France)
|
Posté le : Mar Mar 30, 2004 20:29 Sujet du message: execution automatique de pages: |
|
|
par exemple, en php:
----------------------------------
$i=5
round($i/2) donne 2 (ou 3, sait plus de mémoire)
$i/2 donne 2.5
donc round($i/2) n'est pas égale à ($i/2), donc $i est impair
----------------------------------
$i=4
round($i/2) donne 2
$i/2 donne 2
donc round($i/2) est égale à ($i/2), donc $i est pair
-----------------------------------
La fonction round($i) permet d'arrondir son argument $i (mais c en PHP, a voir sur quel langage tu bosse)
Pareil pour la requete que je vais te filer, c'est du SQL (MySQL). |
|
| |
|
 |
George Abitbol WRInaute accro

Inscrit le: 06 Juin 2003 Messages: 1922
|
Posté le : Mar Mar 30, 2004 20:33 Sujet du message: execution automatique de pages: |
|
|
Ben si i est pair, alors i/2 sera égal à round(i/2) (puisqu'un entier arrondi ça reste cet entier). Donc ce test sert à voir si i est pair.
Pour ma part j'aurais utilisé if ($i % 2 == 0) mais bon
-> http://www.php.net/manual/fr/language.operators.arithmetic.php
Sinon pour la requête c'est
| Code: |
| DELETE FROM ta_table WHERE (date_abonnement + INTERVAL 1 YEAR) > NOW() |
(enfin, modifie le nom du champ et la durée selon tes besoins)
-> http://www.mysql.com/doc/en/Date_and_time_functions.html
Tu n'es pas forcément obligé de faire un CRON, tu pourrais par exemple contrôler la validité de l'abonnement (et éventuellement effacer le compte) lorsque la personne essaye de se connecter. Auquel cas tu ferais d'abord une requête pour vérifier la validité du compte et s'il n'est pas valide tu ferais un DELETE sur l'identifiant du compte. A toi de voir.
Fred |
|
| |
|
 |
sim100 WRInaute accro

Inscrit le: 02 Fév 2003 Messages: 1114 Localisation: Thailande
|
Posté le : Mer Mar 31, 2004 19:43 Sujet du message: Pour blman |
|
|
| blman a écrit: |
- Pour l'affichage "une ligne sur deux", tu a raison.
si round(i/2)==i/2 alors ma_ligne=gris
sinon ma_ligne=gris_clair
- pour le désabonnement, tu peux par exemple effectuer une tache "cron" qui va executer ta requete (DELETE FROM table WHERE (date_abonn+1an)>TODAY) (je ne me rappelle plus la requete exacte, je te la donne demain si personne ne te la donne d'ici là) |
Bonjour
Tu as ton exemple de code blman SVP.
Je te remercie |
|
| |
|
 |
duch WRInaute occasionnel

Inscrit le: 09 Avr 2003 Messages: 194 Localisation: paris
|
Posté le : Jeu Avr 01, 2004 17:56 Sujet du message: execution automatique de pages: |
|
|
il y avait mieux :
en javascript (par exemple mais ça marche dans tous les langages)
| Code: |
<script>
colors = ["DDDDDD","EEEEEE"];
for (i=0; i<20; i++) {
document.write("<tr bgcolor='#"+colors[i%2]+"'><td>&</td></tr>")
}
</script> |
Dernière édition par duch le Jeu Avr 01, 2004 18:13; édité 1 fois |
|
| |
|
 |
George Abitbol WRInaute accro

Inscrit le: 06 Juin 2003 Messages: 1922
|
Posté le : Jeu Avr 01, 2004 17:58 Sujet du message: execution automatique de pages: |
|
|
C'est tout sauf mieux...
-> c'est dépendant de la config visiteur
-> le code produit est obsolète et non conforme aux standards
Fred |
|
| |
|
 |
duch WRInaute occasionnel

Inscrit le: 09 Avr 2003 Messages: 194 Localisation: paris
|
Posté le : Jeu Avr 01, 2004 18:10 Sujet du message: execution automatique de pages: |
|
|
1. j'ai précisé que ça pouvait marcher autrement qu'en javascript. Ce que je donne ici c'est l'algorithme histoire d'élever le niveau en prog.
2. le code produit, j'm'en fous j'ai mis le code juste pour expliquer où il fallait le mettre.
tu le veux en PHP?
Tiens comme tu n'aime pas le code en voici un autre pour faire un arc en ciel :
ça sert à rien mais ça me fais marrer
| Code: |
<script>
colors = ["CC0000","CC6600","FFFF00","00FF00","0000FF"]
for (i=0; i<colors.length; i++) {
document.write("<tr bgcolor='#"+colors[i%colors.length]+"'><td>&</td></tr>")
}
</script>
|
PS : il y un dans mon code moins d'hérésie que dans ceux donner précédemment.
genre i=i+1 ou encore une boucle qui commence à 1 et je ne parle même pas de l'utilisation de round pour le pair/impair |
|
| |
|
 |
George Abitbol WRInaute accro

Inscrit le: 06 Juin 2003 Messages: 1922
|
Posté le : Jeu Avr 01, 2004 18:18 Sujet du message: execution automatique de pages: |
|
|
| duch a écrit: |
| 1. j'ai précisé que ça pouvait marcher autrement qu'en javascript. Ce que je donne ici c'est l'algorithme histoire d'élever le niveau en prog. |
La précision n'y était pas au moment où je répondais, tu devais être en train de l'ajouter
Mais sinon je suis d'accord pour l'algo.
Fred |
|
| |
|
 |
duch WRInaute occasionnel

Inscrit le: 09 Avr 2003 Messages: 194 Localisation: paris
|
Posté le : Jeu Avr 01, 2004 18:21 Sujet du message: execution automatique de pages: |
|
|
oui effectivement, j'ai éditer mon post juste après l'avoir posté, on a dû se croiser.
au temps pour moi |
|
| |
|
 |
sim100 WRInaute accro

Inscrit le: 02 Fév 2003 Messages: 1114 Localisation: Thailande
|
Posté le : Jeu Avr 01, 2004 20:12 Sujet du message: Pardon |
|
|
Desole pour avoir cree le nouveau poste, je ne savais pas.
Ce que tu m'as propose est tres bien, je voulais juste avoir la solution que me proposait blman, c'est tout.
Desole encore
Merci |
|
| |
|
 |
| |
|
|