Selectionner dans un array
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour, je souhaite creer un annuaire vers des sites que j'ai préalablement sélectionnés et insérés dans une base de données.
L'utilisateur choisit la categorie de site qu'il veut et le système doit afficher 10 résultats parmis choisit aleatoirement dans la liste des reponses. Mon problème est que mon système (ci après) retourne tous les sites mais je ne trouve pas le moyen de selectionner les sites.
Je sais pas si mon explication est très clair alors voici le code:
Merci pour vôtre aide
L'utilisateur choisit la categorie de site qu'il veut et le système doit afficher 10 résultats parmis choisit aleatoirement dans la liste des reponses. Mon problème est que mon système (ci après) retourne tous les sites mais je ne trouve pas le moyen de selectionner les sites.
Je sais pas si mon explication est très clair alors voici le code:
$typesite = 'Site_perso'; $query = 'SELECT * FROM selectionsite WHERE type= \''.$typesite.'\''; $reponse = mysql_query($query); while($listesite = mysql_fetch_array($reponse)) { echo "<p><a href='". $listesite['url']."' onclick='javascript:window.open(this.href);return(false);' >".$listesite['info']."</a><br /></p>"; $nombre_site = $nombre_site + 1 ; srand(); $rand = rand(1, $nombre_site); } Ce code affiche TOUTE la liste des sites enregistrés... or moi je souhaite selectionner 10 sites aleatoirement dans la liste et les afficher
Merci pour vôtre aide
A voir également:
- Selectionner dans un array
- Sélectionner du texte dans un pdf - Guide
- Comment sélectionner un message sur whatsapp pour y répondre - Guide
- Comment selectionner toutes les photos dans google photo - Guide
- Sélectionnez une extension correspondant à un fichier de présentation (diaporama). - Forum Powerpoint
- Sélectionner une extension d'un fichier qui s'ouvre avec un traitement de texte - Guide
6 réponses
salut,
pour limiter à 10 enregistrements tu peux le faire en SQL :
pour limiter à 10 enregistrements tu peux le faire en SQL :
$query = 'SELECT * FROM selectionsite WHERE type= \''.$typesite.'\' LIMIT 0, 10';
Merci pour ton aide Dalida mais ce code si j'en crois mais piètres connaissances ne ressortirait que les 10 premieres entrées de la base de données or moi je souhaite en sortir 10 aleatoirement parmis une selection qui en comporte bien plus...
Salut je relance car sans ce système je ne peux avancer sur la suite... Je récapitule mon problème.
Dans une base de donnée j' ai rentré une série de sites avec differents champs notemment l' url, une info sur le site et le type de site.
Je selectionne dans la base de données les sites selon leur type ce qui me donne un nombre conséquent de réponses, parmis lesquelles je désire ressortir aléatoirement 10 réponses.
Mon code ci après sélectionne bien les sites selon leur type mais il m'affiche la totalité des réponses.
J' aimerais comprendre... mais je crois que c'est pas gagné... lol
Dans une base de donnée j' ai rentré une série de sites avec differents champs notemment l' url, une info sur le site et le type de site.
Je selectionne dans la base de données les sites selon leur type ce qui me donne un nombre conséquent de réponses, parmis lesquelles je désire ressortir aléatoirement 10 réponses.
Mon code ci après sélectionne bien les sites selon leur type mais il m'affiche la totalité des réponses.
$typesite = 'Site_perso'; $query = 'SELECT * FROM selectionsite WHERE type= \''.$typesite.'\''; $reponse = mysql_query($query); while($listesite = mysql_fetch_array($reponse)) { echo "<p><a href='". $listesite['url']."' onclick='javascript:window.open(this.href);return(false);' >".$listesite['info']."</a><br /></p>"; $nombre_site = $nombre_site + 1 ; srand(); $rand = rand(1, $nombre_site); }
J' aimerais comprendre... mais je crois que c'est pas gagné... lol
salut,
m'en fout, suis têtu !
-:oþ
m'en fout, suis têtu !
-:oþ
$query = 'SELECT * FROM selectionsite WHERE type= \''.$typesite.'\'' ORDER BY RAND() LIMIT 10';
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ok les premiers essais semblent montrer que cette méthode est efficace.
Même si cela ne comble pas mon ignorance sur le problème qui se posait à moi sur lequel, après réflexion il m'aurait fallu créer un nouveau tableau avec les données recueillis par la requête et les traiter après.
Ta solution traite directement les résultats ce qui est surement moins lourd que ce que je voulais faire.
Merci à toi pour toutes ces précieuses informations que tu partages généreusement.
Pour récapituler, voilà la requête à faire :
Même si cela ne comble pas mon ignorance sur le problème qui se posait à moi sur lequel, après réflexion il m'aurait fallu créer un nouveau tableau avec les données recueillis par la requête et les traiter après.
Ta solution traite directement les résultats ce qui est surement moins lourd que ce que je voulais faire.
Merci à toi pour toutes ces précieuses informations que tu partages généreusement.
Pour récapituler, voilà la requête à faire :
$query = 'SELECT * FROM selectionsite WHERE type= \''.$typesite.'\'' ORDER BY RAND() LIMIT 10';