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

  FORUM HardWare.fr
  Programmation
  PHP

  Faire le lien entre les données d'un array

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Faire le lien entre les données d'un array

n°1928407
Brendeldas
Posté le 01-10-2009 à 23:14:28  profilanswer
 

Salut,
 
J'ai (encore) un problème du genre con mais pas tant que ça en fait. J'explique :
 
J'ai un petit bout de code qui me permet de compter le nombre d'occurrences de certains mots (variables) dans une chaîne, ces mots étant dans une table ma base de données. J'ai donc créé une boucle while pour compter les occurrences de chaque mot, et j'ai mis tout ça dans un array. Le soucis, c'est qu'il me faudrait sélectionner le mot qui ressort le plus souvent. Je peux calculer le nombre le plus grand, mais je ne vois pas comment relier ce nombre au mot auquel il correspond...
 
Voici le code, j'espère que ça sera un peu plus clair :
 

Code :
  1. $nb = array('0'); // Chiffre neutre pour établir l'array
  2. $requete55 = mysql_query('SELECT id, titre FROM test_resultat WHERE id_test = '. $_POST['id_quizz'] .' ORDER BY id');  // Requête dont on se fout royalement
  3.  
  4. while ($data55 = mysql_fetch_array($requete55) )
  5. {
  6. $nb[] = substr_count($somme, $data55['titre']);  // $somme est la chaîne de mots. Cette requête me permet de compter le nombre d'occurrences de chaque mot dans la table test_resultat
  7. }
  8. $max = max ($nb); // Le nombre d'occurrences du mot le plus employé. Mais je voudrais connaître le mot en question...
  9. echo 'max : '.$max;


 
 
Merci d'avance :)


---------------
Plaît-il ?
mood
Publicité
Posté le 01-10-2009 à 23:14:28  profilanswer
 

n°1928418
flo850
moi je
Posté le 02-10-2009 à 06:53:51  profilanswer
 


Code :
  1. $idMax = 0;
  2. $max= 0;
  3. while ($data = mysql_fetch_array($result) )
  4. {
  5.    $nb = substr_count($somme, $data['titre']);  
  6.    if($nb > $max){
  7.          $nb=$max;
  8.          $idMax = $data['id'];
  9.  
  10.     }
  11. }


Message édité par flo850 le 02-10-2009 à 06:54:01

---------------

n°1961806
Brendeldas
Posté le 31-01-2010 à 19:27:57  profilanswer
 

Salut,
 
Désolé pour la réponse tardive, je suis une vraie larve.  :D  
 
J'avais complètement oublié ce topic, et on m'a orienté sur un autre forum vers une méthode quasi-identique à la tienne, qui était en fait la plus simple et la plus logique :
 

Code :
  1. $requete55 = mysql_query('SELECT personnage FROM test_resultat WHERE id_test = '. $_POST['id_quizz'] .' ORDER BY personnage');
  2. $resultat = ""; // chaine qui contiendra le mot
  3. $count = 0; // nombre d'occurences actualisé à chaque passage de boucle
  4.  
  5. while ($data55 = mysql_fetch_array($requete55) )
  6. {
  7.             if(substr_count($somme, $data55['personnage']) > $count)
  8.   {
  9.                 $resultat = $data55['personnage'];
  10.                 $count = substr_count($somme, $data55['personnage']);
  11.             }
  12. }


 
 
Quoiqu'il en soit, merci pour ton aide  :)


---------------
Plaît-il ?

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

  Faire le lien entre les données d'un array

 

Sujets relatifs
[Boost::asio] Acces a des donnees bas niveauPB avec le lien sur 1 Bouton Image
[PostgreSQL 8.4] restaurer base de données dumpOpen Office: Base de données
Lien + FrameQuoi qui enregistre les données?
lien html de base de donnée vers pièce jointeProbleme insertion données Fichier Excel
Problème import données dans table liée SQL sous Access 
Plus de sujets relatifs à : Faire le lien entre les données d'un array


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