mettre le contenu d'un fichier(mot par mot) dans une bdd

verone
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 42
Inscription: 30 Jan 2006

mettre le contenu d'un fichier(mot par mot) dans une bdd

Message le Mar Avr 04, 2006 11:09

bonjour,

j'ai un fichier texte contenant tous les mots du dictionnaire word et j'aimerais les mettres dasn une base de données, de sorte que chaque mot soit un enregistrement et qu'il ne puissent y avoir de doublons(car je vais le faire pour plusiers fichiers).

Quelqu'un à une idée ?


mego
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 331
Inscription: 7 Mar 2006

Message le Mar Avr 04, 2006 11:10

:?: C'est quoi le but de la manip ?


dd32
Modérateur
Modérateur
 
Messages: 3387
Inscription: 9 Sep 2005

Message le Mar Avr 04, 2006 11:50

Si c'est du php/mysql et que tous les mots dans le fichier texte sont séparés par le même "séparateur" (tiens donc :)), c'est jouable.

Exemple avec un fichier texte dont les données sont séparées par un espace.

fichier inc.php
Code: Tout sélectionner
<?
//A REMPLIR*********
  $utilisateur = "";
  $motdepasse  = "";
  $base        = "";
  $serveur     = "";
//******************

  function dbConnect(){
    global $utilisateur, $motdepasse, $serveur,$base;
    $connexion = @mysql_connect($serveur, $utilisateur, $motdepasse);
   @mysql_select_db($base,$connexion);
    return $connexion;
  }
?>


fichier word.php
Code: Tout sélectionner
<HTML><body>
<?php
include("inc.php");

// REMPLACER "nom_du_fichier_texte"
$fp=fopen("nom_du_fichier_texte.txt","r");// ouverture du fichier

while(!feof($fp)){ // tant que pas en fin de fichier
   $lecture=fgets($fp, 4096); // stockage dans $lecture
   $tab=explode(" ",$lecture); // on met dans un tableau les données séparées par un espace
   $nb_elem=count($tab)-1; // nbre d'éléments du tableau
   for($i=0;$i<$nb_elem;$i++){
      // enregistrement des éléments dans une base de données mysql
      // avec une table "word" contenant le champ "mot_word"
      // connexion à la base de données mysql
      $lien = dbConnect();
      // requête d'insertion
      $req = "INSERT INTO word (mot_word) VALUES \"".$tab[$i]."\"";
      //exécution de la requête
      mysql_query($lien,$req);     
      mysql_close();
   }
}
fclose($fp);// fermeture fichier
?>
</body></HTML>


mr_go
WRInaute passionné
WRInaute passionné
 
Messages: 1945
Inscription: 21 Sep 2005

Message le Mar Avr 04, 2006 15:58

Je veux bien ta table! =)


dd32
Modérateur
Modérateur
 
Messages: 3387
Inscription: 9 Sep 2005

Message le Mar Avr 04, 2006 17:36

@mr_go : instructions SQL à mettre dans PHPMyAdmin par exemple :

Code: Tout sélectionner
-- Structure de la table `word`
--

CREATE TABLE `word` (
  `id_word` int(20) NOT NULL auto_increment,
  `mot_word` text collate latin1_general_ci NOT NULL,
  PRIMARY KEY  (`id_word`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;


mr_go
WRInaute passionné
WRInaute passionné
 
Messages: 1945
Inscription: 21 Sep 2005

Message le Mer Avr 05, 2006 6:57

Je me suis mal exprimé, je parlais en terme de données.
Mais merci quand même. ;)

spidetra
WRInaute passionné
WRInaute passionné
 
Messages: 1500
Inscription: 7 Juil 2003

Message le Mer Avr 05, 2006 7:25

sur ton champ mot_word :
- remplace text par varchar(XX)
- supprimme le collate sur la colonne il ne sert à rien
- autorise les NULL dans le champ
- rajoute une clause UNIQUE

verone
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 42
Inscription: 30 Jan 2006

Message le Jeu Avr 06, 2006 10:37

merci à toi sangoku ;) !


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Analyseur de densité
    Cet outil vous permet de calculer l'indice de densité d'un mot-clé d'une page web. Il est calculé à la fois pour la balise TITLE, la balise META description et l'ensemble du texte de la page.
  • Suggestion de mots
    Cet outil vous fournit une liste de mots sémantiquement proches du mot que vous fournissez en entrée. Il peut servir à vous donner des idées de mots à utiliser sur vos pages, voire de contenus à ajouter.
  • Suggestion de mots Google
    Cet outil vous permet d'obtenir une liste de 10 mots ou expressions suggérés par Google sur la base d'un mot que vous fournissez.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité