1

Bon, c'est bof optimisé, mais si ça vous fait plaisir, essayez-le !
<?      /* PROCESSUS DE CHARGEMENT */      $fp = fopen ("csv.csv","r");  // ON OUVRE LE FICHIER CSV      $lignes=0;  // ON INITIALISE LE COMPTEUR DU NOMBRE D'ENREGISREMENTS        while ($data = fgetcsv ($fp, 1000, ",")) {  // TANT QU'IL Y AURA DES DONNEES           $num = count ($data);  // NOMBRE D'ENREGITREMENTS PAR LIGNE           for ($c=0; $c<$num; $c++) {  // POUR CHAQUE CASE DE CHAQUE ENREGISTREMENT                $tabannonces[$lignes][$c]=$data[$c];  // ON CHARGE CA DANS UN TABLEAU           }           $lignes++;  // INCREMENTATION DU NOMBRE DE LIGNES      }      fclose ($fp);  // ON FERME LE FICHIER (PROPREMENT)      echo "Il y a ".$num." colonnes et ".$lignes." enregistrements";  // SANS BLAGUES !?      /* ON COMMENCE L'AFFICHAGE DANS LE TABLEAU HTML (RIEN DE SORCIER) */      echo "<table bgcolor='#000000' cellspacing='1'><tr>";      for ($i=1 ; $i<=$num ; $i++) {           echo "<td bgcolor='#DDDDDD'><font face='Verdana' size='2'><b> C".$i." </b></font></td>";      }      echo "</tr>";      for ($ligne=1 ; $ligne<=$lignes ; $ligne++) {           echo "<tr>";           for ($colonne=1 ; $colonne<=$num ; $colonne++) {                echo "<td bgcolor='#FFFFFF' nowrap> ".$tabannonces[$ligne-1][$colonne-1]." </td>";           }           echo "</tr>";      }      echo "</table><p>"; ?>
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

2

CSV ?

3

Oui, ce sont des types de fichiers avec séparateurs qui peuvent être
;
-
:
.
ou autre, voilàààà
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

4

comma separated je sais plus quoi, non ?
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

5

#3 >> Oué, c un truk comme ça je crois, même si c'est pas toujours séparé par des virgules (parfois des points, des points-virgules, les slashes, des tranches de poulet... etc...).
Bref, vous avez essayé ???
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

6

bah, je crois que les tableurs tel excel peuvent exporter des donnes dans ce format...
m'enfin, ca va surement disparaitre pr laisser place au xml, je suppose, non ?
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

7

Oui, mais je sais que c'est très utilisé dans mon boulot. +de 500 enregistrement par semaine me parviennent dans ce format.
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

8

arf, ok, ok smile
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

9

Bon, le code a complêtement été amélioré, mais il est fait à l'arrache, sans commentaires ni que dalle), essayez-le vous n'allez pas être déçu.
Ne me critiquez pas s'il n'est pas optimisé au top, comme je l'ai dit précédemmtn, il est à l'arrache.

NOUVELLE POSSIBILITES : CREER UNE BDD, CREER UNE TABLE, TRANSFERER "SIMPLEMENT" VOS *.CSV (ou autres formats avec séparateurs) DANS VOTRE BDD mySQL. <link title="test" type="text/css" rel="stylesheet" href="csvstyle.css"> <?      echo "<form method='post' action='lecsveur.php'>";      mysql_connect("127.0.0.1","root","");      mysql_select_db("default");      /* PROCESSUS DE CHARGEMENT */      $fp = @fopen ("csv.csv","r") or die ("Impossible d'ouvrir le fichier *.csv");  // ON OUVRE LE FICHIER CSV      $lignes=0;  // ON INITIALISE LE COMPTEUR DU NOMBRE D'ENREGISREMENTS        while ($data = @fgetcsv ($fp, 1000, ",")) {  // TANT QU'IL Y AURA DES DONNEES           $num = count ($data);  // NOMBRE D'ENREGITREMENTS PAR LIGNE           for ($c=0; $c<$num; $c++) {  // POUR CHAQUE CASE DE CHAQUE ENREGISTREMENT                $tabannonces[$lignes][$c]=$data[$c];  // ON CHARGE CA DANS UN TABLEAU           }           $lignes++;  // INCREMENTATION DU NOMBRE DE LIGNES      }      fclose ($fp);  // ON FERME LE FICHIER (PROPREMENT)      echo "<font class='titre'>Tout transférer vers la table : <input type='text' name='nomtable' class='monform'> de la base : <input type='text' name='labase' class='monform'></font><p>";      echo "Remplissez les noms des champs des tables correspondantes ou laissez vide si vous ne souhaitez pas ajouter ces champs";      /* ON COMMENCE L'AFFICHAGE DANS LE TABLEAU HTML (RIEN DE SORCIER) */      echo "<table bgcolor='#000000' cellspacing='1'><tr>";      for ($i=1 ; $i<=$num ; $i++) {           echo "<td bgcolor='#DDDDDD'><b><input type='text' name='champ[]' class='monformbarb'></b></td>";      }      echo "</tr>";      for ($ligne=1 ; $ligne<=$lignes ; $ligne++) {           echo "<tr>";           for ($colonne=1 ; $colonne<=$num ; $colonne++) {                echo "<td bgcolor='#FFFFFF' nowrap> ".$tabannonces[$ligne-1][$colonne-1]." </td>";           }           echo "</tr>";      }      $nbcolspans=$num-1;      echo "<tr><td bgcolor='#FFFFFF' colspan='".$nbcolspans."'> </td><td align='right' bgcolor='#FFFFFF'><input type='Submit' value='Enregistrer' class='monform'></td></tr>";      echo "</table>";      echo "</form><p>";      if (($nomtable)&&(!$nouvellebase)&&($labase)) {           mysql_select_db($labase);           mysql_query("CREATE DATABASE erf");           for ($ligne=1 ; $ligne<=$lignes ; $ligne++) {                $requete="INSERT INTO ".$nomtable." (";                $compteur=0;                $nbcolssql=0;                foreach ($champ as $kellabel) {                     $compteur++;                     if ($kellabel) {                          $nbcolssql++;                          if ($compteur==1) {                               $requete.=$kellabel;                          } else {                               $requete.=",".$kellabel;                          }                     }                }                $requete.=") VALUES (";                for ($i=1 ; $i<=$nbcolssql ; $i++) {                     $tabannonces[$ligne-1][$i-1]=str_replace('<','<',$tabannonces[$ligne-1][$i-1]);                     $tabannonces[$ligne-1][$i-1]=str_replace('>','>',$tabannonces[$ligne-1][$i-1]);                     $tabannonces[$ligne-1][$i-1]=str_replace('"','"',$tabannonces[$ligne-1][$i-1]);                     if ($i==1) {                          $requete.="'".$tabannonces[$ligne-1][$i-1]."'";                     } else {                          $requete.=",'".$tabannonces[$ligne-1][$i-1]."'";                     }                }                $requete.=");";                echo $requete."<br>";                mysql_query($requete) or die ("<font color='#FF0000'><b>!!! Enregistrement non effectué !!!</b><br></font>");                echo "<font color='#FF0000'><b>Enregistrement effectué</b><br></font>";           }      }      echo "<form action='lecsveur.php' method='post'><font class='titre'>Si cela est nécessaire, vous pouvez créer une base de données</font>";      echo "<br>Saisissez son nom : <input type='text' name='nouvellebase' class='monform'> <input type='submit' value='Créer la base' class='monform'></form>";      if ($nouvellebase) {           mysql_query("CREATE DATABASE ".$nouvellebase) or die ("<font color='#FF0000'>Base non créée</font>");           echo "<font color='#FF0000'>Base ".$nouvellebase." créée</font>";      }      echo "<form action='lecsveur.php?act=nouvtable' method='post'><font class='titre'>Et si vous n'avez pas créé de table, choisissez le nom de la table : <input type='text' name='basetable' class='monform'> dans la base <input type='text' name='nombase' class='monform'><br>      et remplissez les noms des tables à l'aide du formulaire ci-dessous      </font>      <input type='hidden' name='nbchamps' value=".$num.">";      echo "<table bgcolor='#000000' cellspacing='1'>";      echo "<tr>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Nom du champ </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Type </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Taille/Valeur </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Attributs </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Null </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Défaut </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Extra </b>                          </td>                          <td bgcolor='#DDDDDD' nowrap>                               <b> Clés </b>                          </td>           </tr>";      for ($i=1 ; $i<=$num ; $i++) {           echo "<tr>                          <td bgcolor='#DDDDDD'>                                <input type='text' class='monformbarb' name='champ[".$i."]'>                           </td>                          <td bgcolor='#DDDDDD'>                                <select class='monform' name='type[".$i."]'>                     <option value='varchar'>VARCHAR</option>                 <option value='tinyint'>TINYINT</option>                 <option value='text'>TEXT</option>                 <option value='date'>DATE</option>                 <option value='smallint'>SMALLINT</option>                 <option value='mediumint'>MEDIUMINT</option>                 <option value='int'>INT</option>                 <option value='bigint'>BIGINT</option>                 <option value='float'>FLOAT</option>                 <option value='double'>DOUBLE</option>                 <option value='decimal'>DECIMAL</option>                 <option value='datetime'>DATETIME</option>                 <option value='timestamp'>TIMESTAMP</option>                 <option value='time'>TIME</option>                 <option value='year'>YEAR</option>                 <option value='char'>CHAR</option>                 <option value='tinyblob'>TINYBLOB</option>                 <option value='tinytext'>TINYTEXT</option>                 <option value='blob'>BLOB</option>                 <option value='mediumblob'>MEDIUMBLOB</option>                 <option value='mediumtext'>MEDIUMTEXT</option>                 <option value='longblob'>LONGBLOB</option>                 <option value='longtext'>LONGTEXT</option>                 <option value='enum'>ENUM</option>                 <option value='set'>SET</option>                               </select>                           </td>                          <td bgcolor='#DDDDDD' name='type[".$i."]'>                                <input name='taille[".$i."]' type='text' class='monformbarb'>                           </td>                          <td bgcolor='#DDDDDD'>                                <select class='monform' name='attribut[".$i."]'>                     <option value='' selected='selected'></option>                 <option value='BINARY'>BINARY</option>                 <option value='UNSIGNED'>UNSIGNED</option>                 <option value='UNSIGNED ZEROFILL'>UNSIGNED ZEROFILL</option>                               </select>                          </td>                          <td bgcolor='#DDDDDD'>                                <select class='monform' name='nullite[".$i."]'>                                    <option value='NOT NULL'>NON</option>                                    <option value='NULL'>OUI</option>                               </select>                           </td>                          <td bgcolor='#DDDDDD'>                                <input name='defaut[".$i."]' type='text' class='monformbarb'>                           </td>                          <td bgcolor='#DDDDDD'>                                <select class='monform' name='extra[".$i."]'>                     <option value='' selected='selected'></option>                 <option value='auto_increment'>AUTO_INCREMENT</option>                               </select>                           </td>                          <td bgcolor='#DDDDDD'>                                <select class='monform' name='cle[".$i."]'>                     <option value='' selected='selected'></option>                     <option value='PRIMARY KEY'>PRIMAIRE</option>                     <option value='INDEX'>INDEX</option>                     <option value='UNIQUE'>UNIQUE</option>                               </select>                           </td>           </tr>";      }      echo "<tr>";      echo "<td colspan='8' bgcolor='#DDDDDD'>";      echo " <input type='Submit' value='Enregistrer' class='monform'>";      echo "</td>";      echo "</tr>";      echo "</table></form>";      if ($act=='nouvtable') {           mysql_select_db($nombase) or die ("<font color='#FF0000'><b>!!! La base spécifiée n'existe pas !!!</b></font>");           $requete="CREATE TABLE ".$basetable." ( ";           for ($i=1 ; $i<=$nbchamps ; $i++) {                if ($champ[$i]) {                     if ($i>=2) {                          $requete.=", ";                     }                     $requete.=$champ[$i]." ".$type[$i];                     if ($taille[$i]) {                          $requete.="(".$taille[$i].")";                     } else {                          switch($type[$i]) {                               case 'int' : $requete.="(11)"; break;                               case 'timestamp' : $requete.="(14)"; break;                               default : $requete.="";                          }                     }                     $requete.=" ";                     if ($attribut[$i]) {                          $requete.=$attribut[$i]." ";                     }                     if ($nullite[$i]) {                          $requete.=$nullite[$i]." ";                     }                     if ($defaut[$i]) {                          $defaut[$i]=str_replace('"','"',$defaut[$i]);                          $requete.="default '".$defaut[$i]."' ";;                     }                     if ($extra[$i]) {                          $requete.=$extra[$i]." ";                     }                     if ($cle[$i]) {                          $requete.=$cle[$i]." ";                     }                }           }           $requete.=")";      echo $requete;      mysql_query($requete) or die ("<font color='#FF0000'><b>!!! TABLE NON CREEE !!!</b></font>");      echo "<font color='#FF0000'><b>!!! La table a correctement été créée</b></font>";      } ?>
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo