DIVERS




Une classe de pagination en Php - bientôt...

14/04/2006 19:22
1.011 lectures
Après quelques recherches infructueuses sur le web pour mon travail, j'ai développé ma propre classe de pagination en Php.
Pour ceux qui l'ignore, la pagination permet de présenter de façon plus claire un grand nombre d'informations en limitant la taille des données que l'on va afficher à chaque page. En effet, au lieu de présenter une liste de 500 liens les uns derrière les autres et d'user du temps serveur pour rien, une pagination de 50 éléments diminuera considérablement le temps d'affichage.
Après ce rappel en forme de lieu commun, qui me permet de meubler ce billet, passons aux divers éléments de cette classe.

Différents formes de pagination.
L'avantage de l'objet c'est que l'on va pouvoir facilement générer des types de pagination différents sans avoir à gérer un code complexe à chaque fois. Ainsi j'ai pour le moment dans la version beta de la classe, 3 types de pagination.

La pagination totale :
Forme : Page 1 2 3 4 5 6
Description : Affichage les uns derrière les autres des différentes numéros de pages

La pagination partielle :
Forme : << < Page 5 6 7 > [html]TAG_HTML_02TAG_HTML_02[/html]
Description : Ici les numéros de page sont affichés par groupe de X éléments des liens permettant d'accéder aux groupes d'éléments précédent, suivant, premier et dernier.

La pagination par liste déroulante :
Forme : Page [liste déroulante des n° de page] / 10
Description : Contenus dans un formulaire, les numéros de pages sont affichés dans une liste déroulante.

Chaque pagination est assortie d'un nombre croissant et non exhaustif de paramètres.
Exemples au hasard :
- Le nombre d'éléments pour chaque groupe de la pagination partielle.
- Le texte à mettre devant les numéros de page (Par défaut : 'Page')
- le caractère de séparation entre les numéros de page (Par défaut : '|')

Comment ça marche ton truc ?
Les différentes classes existantes sur le net, faisait passer la ressource contenant les résultats de requête dans l'objet de pagination.
J'ai pour ma part opté pour ne transmettre que le numéro de la page en cours, charge au développeur de calculer l'offset et la limite de sa requête.

Exemple :

// on admets qu'on a un tableau composé de 500 éléments
// on veut afficher 50 éléments par page
// par défaut la pagination commence à 1

// inclusion de la classe
require ('phpBarre.php');
// instanciation du nouvel objet
$oBarre = new BarreNavigation($nElement /*500*/, $nElementParPage/*50*/, $nPageEnCours);
// création du code XHTML de la barre
$oBarre->createSelectBarre();
// Affichage de la barre
$oBarre->showBarre();


A cela s'ajoute la possibilité de transmettre des paramètres avec chaque page si par exemple on a des éléments qui rentre en compte dans l'affichage (comme pour une recherche)

// on ajoute un paramètre et sa valeur
$oBarre->AddParam('g_typerecherche', 1);
// cela générera une url de type '?page=1&g_typerecherche=1' pour chaque numéro de page


Pour le cas où c'est un système de template qui est utilisé et on veut juste récupéré le code XHTML de la barre et non l'afficher on utilisera :

$sTexteBarre = $oBarre->getBarre();
// puis association entre la balise de template et le code généré

Super, où est dispo cette merveille ?
Comme le titre l'annonce, ma classe est disponible bientôt, je dois encore faire quelques modifications pour pouvoir la distribuer. Notamment, je dois commenter et rajouter certaines fonctionnalités. De plus, j'utilise cette classe à mon travail et je dois encore obtenir l'autorisation de la distribuer. A noter, que la plupart des nouveaux sites de ma boîte l'utilise : http://www.medietas.com (si par hasard ce lien est considéré comme une publicité illégale, prévenez moi je le retirerai sans faute).

Gagnons des millions à la roulette du casino

03/02/2006 23:29
890 lectures
Alors ce que je propose ci-après n'est pas LE truc infaillible pour gagner des sous à la roulette, mais un système pour essayer de maximiser les chances d'avoir des gains.
Cette martingale - c'est le nom donné à un système de jeu particulier - est très connue de tous les joueurs "professionnels", mais elle impose certaines contraintes.

Petit rappel
"Le hasard n'empêche pas l'ordre" (Bergson).
Ce n'est pas parce qu'un événement a une chance infime de se produire qu'il ne se produira pas.
Il y a autant de chance d'avoir une sortie 1,2,3,4,5,6 au loto qu'une suite discontinue quelconque de nombres.
Vous pouvez rejouer la combinaison gagnante du précédent loto sur le loto en cours, car il a autant de chance de sortir qu'une autre combinaison (les tirages sont indépendants).
Il n'existe aucun moyen de battre le hasard, mais on peut essayer de limiter ces effets néfastes.

La martingale de Hawks
Cette martingale est simple. Je vais l'illustrer par un exemple :
Nous jouons au casino, et particulièrement à la roulette. Nous misons systématiquement sur le rouge.
En cas de sortie du rouge : on gagne 2 fois sa mise.
En cas de sortie du noir : on perd.
En cas de sortie du 0 (vert) : on perd.
On peut pour simplifier ramener les chances de gagner en misant sur le rouge à (un peu moins de) 1 sur 2 à chaque tirage.

La martingale dit : "à chaque fois que l'on perd, on double sa mise sur le même événement choisi. Dès que l'on gagne on retourne à la mise initiale"
Je mise 1€ sur rouge ; sortie noire ; perdu ; Gain -1 €
Je mise 2€ sur rouge ; sortie noire ; perdu ; Gain -2 €
Je mise 4 sur rouge ; sortie noire ; perdu ; Gain -7 €
Je mise 8€ sur rouge ; sortie noire ; perdu ; Gain -15 €
Je mise 16€ sur rouge ; sortie rouge ; gagné ; Gain 1€
Je mise 1€ sur rouge; sortie rouge ; gagné ; Gain 2€
Je mise 1€ sur rouge; sortie noir ; perdu ; Gain 1€
Je mise 2€ sur rouge; sortie rouge ; gagné ; Gain 3€

Sur cet exemple, on voit qu'au bout de 8 tirages on a gagné 3€. La martingale joue sur le fait que la probabilité d'avoir l'événement N fois une couleur sortie est de 1 sur 2 puissance N.
Ainsi avoir l'événement 4 fois le noir de sortie correspond à 1 chance sur 16 ou pour positiver il y a 15 chances sur 16 d'avoir le rouge après 3 noirs consécutifs.

Cooool on va se faire plein de pognon... ben pas forcément
Cette martingale se heurte à plusieurs limites et heureusement sinon les casinos ne gagneraient jamais d'argent.

Souvenez-vous : "Ce n'est pas parce qu'un événement a une chance infime de se produire qu'il ne se produira pas." Ainsi, même si la probabilité d'avoir 8 fois le noir de suite est que de 1 sur 256, il est parfaitement envisageable que ça vous arrive (personnellement le pire que j'ai eu c'est 11 fois de suite le noir et je pariais sur le rouge :-( )

De plus, il y a une case qui tue : le zéro. Le zéro ne fait gagner que ceux qui mise dessus. Il n'est ni rouge, ni noir, ni impair, ni pair, ni passe, ni manque. Il permet aux casinos de diminuer la probabilités des mises simples à moins de 50%, et augmente du coup le risque d'avoir une série contre soit.

On risque aussi beaucoup d'argent pour un gain minime : si on a 8 noir de suite (alors qu'on joue rouge), on engage 512 € le coup suivant pour un gain potentiel de 1 € ! A cela s'ajoute, une astuce simple des casinos, qui limite les mises maximales. Ainsi si le casino n'autorise que 500 € maxi par mise, une suite de 8 couleurs contre vous avec une mise initiale de 1€, vous fera perdre 511€ en cumul sans que vous puissiez doubler sur le coup suivant (2 puissance 8 x 2 = 512 > 500 € maxi autorisé).

Pas cool... Il n'y a rien a faire alors
Si, il faut jouer prudemment et ne pas hésiter à briser une série contre vous.
Je vous conseille de jouer 0.10 € en mise initiale, et si au bout de 6 sorties contre vous (soit 1 chance sur 64 que cela arrive) de briser le doublage de mise (vous aurez engagé 6.30 € en cumulé tout de même) en recommençant à 0.10 €.
Limité vous aussi à des gains fixe chaque jour. Par exemple, 3€ de gains et j'arrête.
Ne changez jamais de martingale en cours de route, c'est le meilleur moyen de retourner les probabilités contre vous.

Et toi, teuh t'es riche ?
Ben non, car je n'ai pas suivi les règles ci-dessus.
Avec une mise initiale de 15 €, j'étais monté jusqu'à 84 €, avant de tout perdre par une suite défavorable de 11 noirs où j'ai tout perdu. :-( mais bon quel frisson... :-)
  • 1 (current)
Flux RSS Que du sexe, des femmes nues, des hommes nus, des animaux nus, bref le blog le plus intéressant du monde... et un poil de football et d'informatique aussi... mais nus évidemment.
teuh1308510950.jpg

teuh

Voir son profil complet

Archives

2014

2013

2011

2010

2009

2008

2007

2006

2005