Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1435 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  2 resultats aleatoires parmi 4 selectionnes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

2 resultats aleatoires parmi 4 selectionnes

n°1514067
redah75
Posté le 13-02-2007 à 13:21:47  profilanswer
 

Bonjour tout le monde,
 
j'explique mon sujet :)
 
j'ai une table qui contient des evenements, j'aimerais toujours afficher de maniere aleatoire 2 resultats parmi les 4 prochains evenements mais je n'y parviens pas :(
 
si j'utilise "ORDER BY RAND() LIMIT 2" il va bien m'afficher 2 resultats aleatoires MAIS de TOUS les evenement, or moi je veux que ca soit d'uniquement les 4 prochains...
 
Merci de votre aide.
Reda
 
 

mood
Publicité
Posté le 13-02-2007 à 13:21:47  profilanswer
 

n°1514068
sielfried
Posté le 13-02-2007 à 13:24:37  profilanswer
 

Tu sélectionnes les 4 prochains, et ensuite tu rand() en PHP ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1514081
chani_t
From Dune
Posté le 13-02-2007 à 13:55:59  profilanswer
 

tu peux donner un second argument à Limit... soit limit [valeur de la ligne de départ], [valeur de l'incrément]..
 
Extrait de la doc :
SELECT [STRAIGHT_JOIN]
       [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
       [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] [HIGH_PRIORITY]
       [DISTINCT | DISTINCTROW | ALL]
    select_expression,...
    [INTO {OUTFILE | DUMPFILE} 'nom_fichier' export_options]
    [FROM table_references
      [WHERE where_definition]
      [GROUP BY {unsigned_integer | nom_de_colonne | formula} [ASC | DESC], ...
      [HAVING where_definition]
      [ORDER BY {unsigned_integer | nom_de_colonne | formula} [ASC | DESC] ,...]
      [LIMIT [offset,] lignes]
      [PROCEDURE procedure_name(argument_list)]
      [FOR UPDATE | LOCK IN SHARE MODE]]
 
vla

n°1514082
sielfried
Posté le 13-02-2007 à 14:02:03  profilanswer
 

ceci dit "order by rand()" est à éviter quand c'est possible, c'est particulièrement mauvais niveau perfs


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1514087
redah75
Posté le 13-02-2007 à 14:16:45  profilanswer
 

merci pour vos reponses...
comment je peux rand() en PHP des resultats?? j'utilise generalement rand() pour generer un nombre aleatoire... mais là j'avoue que je ne sais pas cmt je peux l'utiliser avec un mysql_fetch_array ou row!!

n°1514094
sielfried
Posté le 13-02-2007 à 14:31:15  profilanswer
 

Code :
  1. $rows = array();
  2.  
  3. while ($rows[] = mysqli_fetch_assoc()) {}
  4.  
  5. $rand_keys = array_rand($rows, 2);
  6.  
  7. foreach ($rand_keys as $rand_key) {
  8.  $row = $rows[$rand_key]
  9.  // ...
  10. }


 
Par exemple.


Message édité par sielfried le 13-02-2007 à 14:34:56

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1514122
redah75
Posté le 13-02-2007 à 15:25:51  profilanswer
 

OK, merci bp :)
quel est la dif entre fetch_array et fetch_assoc?? et a quoi sert le 'i' de mysqli_* ?
 
merci

n°1514229
sielfried
Posté le 13-02-2007 à 18:47:26  profilanswer
 

mysqli c'est en gros comme mysql, mais c'est mieux, c'est compatible avec les dernières versions de MySQL et surtout on peut enfin utiliser des prepared statements. :o
 
http://fr.php.net/mysqli pour les détails.
 
Sinon la seule différence entre assoc et array c'est qu'avec assoc tu n'as accès qu'aux colonnes avec $row['nom_colonne'] et pas avec $row[numéro_colonne] aussi (tu peux simuler ce comportement avec la version "array" aussi ceci dit). Il me semble qu'il y a aussi un gain minime en perf (en tout cas c'était le cas avec l'extension mysql), mais bon... :spamafote:


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1514394
redah75
Posté le 14-02-2007 à 10:19:36  profilanswer
 

OK cool, merci infiniment de ton (votre) aide ainsi que pour tes informations... :)
 
@ bientot


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  2 resultats aleatoires parmi 4 selectionnes

 

Sujets relatifs
[OK] resultats X à Y sur une requeteFonction pour des nombres entiers aleatoires?
étaler des résultats sur plusieurs pagesAffichage des résultats pages par pages
générateur de nombres aléatoires sous Matlab : problèmeAlternative au générateur de nombres aléatoires Excel
Choix de 5 chiffres aléatoires DISTINCTS[access] limiter les resultats retournés dans un group by - Résolu !
[FORTRAN90]Remplissage d'un tableau avec des valeurs aléatoires[Bash /Awk] Compter les résultats...
Plus de sujets relatifs à : 2 resultats aleatoires parmi 4 selectionnes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR