Source: lesson_09_data_load.php | Résultat |
<?php require ("../mysql_connexion/mysql_connexion.php"); require ("../commons/functions.php"); //mysql_select_db($db) ; /* Table des départements departements.csv +-----------+-------+---------+---------+ |N° | département| nom | tel | 1 ; Ain 2 ; Aisne 3 ; Allier +-----------+-------+---------+--------- */ $tableName = "atelierphp_exe_departements"; //si la table existait déjà on l'efface (mySQLtable_exist($tableName)) ? drop_table($tableName) : print (""); //---création de la table departements $result = mysqli_query($mysqli,"CREATE TABLE atelierphp_exe_departements (DEPARTEMENT_ID INT not null, DEPARTEMENT_NOM TINYBLOB , PRIMARY KEY (DEPARTEMENT_ID) , INDEX (DEPARTEMENT_ID))") ; if ($result == 1) { echo "table $tableName created<br/>"; } else { echo "error creating the table $tableName<br/>"; } //----------------------------------------------------------------- // on ouvre le fichier texte que l'on veut charger $file_name = "../exercises/departements.csv"; $myFile = file($file_name); // make sure the open was successful if(!($myFile)) { print("Impossible d'ouvrir le fichier $file_name "); //exit; } // count($myfile) donne le nombre de lignes du fichier for ($index=0; $index < count($myFile); $index++) { //on utilise les tokens pour séparer chaque morceau de ligne // ici le séparateur est le ; et in n'y a que deux champs // donc un 1ier token pour extraire le premier et un second //sans paramètre pour le second champ (autant de fois token que de champs) $token_table[0]=strTok($myFile[$index],";"); $token_table[1]=strTok(";");
$departement_id = $token_table[0]; //le addslashes set à cacher les apostrophes $departement_nom = addslashes(trim($token_table[1])); //echo pour vérification echo stripslashes($departement_id)."*".stripslashes($departement_nom)."<br/>"; //chargement de la ligne dans la base $result = mysqli_query($mysqli,"INSERT INTO atelierphp_exe_departements (DEPARTEMENT_ID,DEPARTEMENT_NOM) VALUES ('$departement_id','$departement_nom')"); if ($result == 1) { echo stripslashes($departement_nom)."inséré <br/>"; } else { echo "error inserting stripslashes($departement_nom) <br/>"; } } //lecture de la table pour vérification après le chargement complet echo "***** CONTENU DE LA TABLE DEPARTEMENTS *****<br/>"; $result = mysqli_query($mysqli,"select * from atelierphp_exe_departements ") ; while($row = mysqli_fetch_array($result)) { echo stripslashes($row['DEPARTEMENT_ID']."*".$row['DEPARTEMENT_NOM'])."<br/>"; }
Fichier : departements.csv
01; Ain
02; Aisne
03; Allier
04; Alpes de Haute Provence
05; Hautes-Alpes
06; Alpes-Maritimes
07; Ardèche
08; Ardennes
10; Aube
11; Aude
13; Bouches-du-Rhône
14; Calvados
15; Cantal
16; Charente
17; Charente-Maritime
18; Cher
19; Corrèze
20; Corse
21; Côte d'Or
22; Côtes d'Armor
23; Creuse
24; Dordogne
25; Doubs
26; Drôme
27; Eure
28; Eure-et-Loir
29; Finistère
30; Gard
33; Gironde
34; Hérault
35; Ille-et-Vilaine
36; Indre
37; Indre-et-Loire
38; Isère
39; Jura
40; Landes
41; Loir-et-Cher
42; Loire
43; Haute-Loire
44; Loire-Atlantique
45; Loiret
47; Lot-et-Garonne
48; Lozère
49; Maine-et-Loire
50; Manche
51; Marne
52; Haute-Marne
53; Mayenne
54; Meurthe-et-Moselle
55; Meuse
56; Morbihan
57; Moselle
58; Nièvre
59; Nord
60; Oise
61; Orne
62; Pas-de-Calais
63; Puy-de-Dôme
64; Pyrénées-Atlantiques
66; Pyrénées-Orientales
67; Bas-Rhin
68; Haut-Rhin
69; Rhône
70; Haute-Saône
71; Saône-et-Loire
72; Sarthe
73; Savoie
74; Haute-Savoie
75; Ville de Paris
76; Seine-Maritime
77; Seine-et-Marne
78; Yvelines
79; Deux-Sèvres
80; Somme
83; Var
84; Vaucluse
85; Vendée
86; Vienne
87; Haute-Vienne
88; Vosges
89; Yonne
90; Territoire de Belfort
91; Essonne
92; Hauts-de-Seine
93; Seine Saint-Denis
94; Val-de-Marne
95; Val d'Oise
Fichier : connect_to_db.php
<?php //ceci est un fichier fictif, //la vrai connection est déjà //faite par ailleur /* $host = ""; // nom du serveur : localhost, sql5, ... $user = ""; // nom d'utilisateur (root si en local) $pass = ""; // mot de passe $db = ""; // nom de la base de données mySQL $dblink = mysql_connect($host,$user,$pass); //mysql_select_db($db); */ ?>
Fichier : functions.php
<?php // Pour savoir si une table existe function mySQLtable_exist($tableName) { $query = "SELECT COUNT(*) FROM $tableName"; $result = mysqli_query($mysqli,$query); $num_rows = @mysqli_num_rows($result); if($num_rows) { echo "<small>La table existait déjà <br/>"; return TRUE; } else { echo "<small>La table n'existait pas <br/>"; return FALSE; } } // Supprime une table avec message approprié //attention $tableName et non $table_name function drop_table($tableName) { echo "Efface table ".$tableName."<br/>"; $result = mysqli_query($mysqli,"DROP TABLE $tableName") ; if ($result == 1) { echo "Table effacée <br/>"; } else { echo "Erreur en effaçant the table<br/>"; } } // Insère un enregistrement dans une table function insert_a_row_1 ($table_name, $field_name_1, $field_name_2, $field_1, $field_2) { $result = mysqli_query($mysqli,"INSERT INTO $table_name ($field_name_1,$field_name_2) VALUES ('$field_1','$field_2')"); if ($result == 1) { echo "valeur $field_2 insérée dans $field_name_2 <br/>"; } else { echo "erreur lors de l'insersion $field_2 dans la table $table_name <br/>"; } } function insert_a_row_2 ($table_name, $field_name_1, $field_name_2, $field_name_3, $field_1, $field_2, $field_3) { $result = mysqli_query($mysqli,"INSERT INTO $table_name ($field_name_1,$field_name_2,$field_name_3) VALUES ('$field_1','$field_2','$field_3')"); if ($result == 1) { echo "value $field_2 inserted in $field_name_2 <br/>"; } else { echo "error inserting $field_2 in the table $table_name <br/>"; } } //lecture d'une table function readTable ($tableName,$field_1,$field_2="",$field_3="", $field_4="",$field_5="") { echo "Lecture de la table $tableName :"; echo "<table border=1><tr><th>$field_1 </th><th>$field_2</th> <th>$field_3</th><th>$field_4</th> <th>$field_5</th></tr>"; $result=mysqli_query($mysqli,"select * from $tableName "); $fields = mysqli_num_fields($result); while ($row=mysqli_fetch_array($result)) { echo "<tr>"; for($i=0;$i<$fields;$i++) { echo "<td>$row[$i]</td>"; } echo "</tr>"; } echo "</table>"; } ?>
|
La table existait déjà Efface table atelierphp_exe_departements Table effacée table atelierphp_exe_departements created 01*Ain Aininséré 02*Aisne Aisneinséré 03*Allier Allierinséré 04*Alpes de Haute Provence Alpes de Haute Provenceinséré 05*Hautes-Alpes Hautes-Alpesinséré 06*Alpes-Maritimes Alpes-Maritimesinséré 07*Ardèche Ardècheinséré 08*Ardennes Ardennesinséré 10*Aube Aubeinséré 11*Aude Audeinséré 13*Bouches-du-Rhône Bouches-du-Rhôneinséré 14*Calvados Calvadosinséré 15*Cantal Cantalinséré 16*Charente Charenteinséré 17*Charente-Maritime Charente-Maritimeinséré 18*Cher Cherinséré 19*Corrèze Corrèzeinséré 20*Corse Corseinséré 21*Côte d'Or Côte d'Orinséré 22*Côtes d'Armor Côtes d'Armorinséré 23*Creuse Creuseinséré 24*Dordogne Dordogneinséré 25*Doubs Doubs inséré 26*Drôme Drômeinséré 27*Eure Eureinséré 28*Eure-et-Loir Eure-et-Loirinséré 29*Finistère Finistèreinséré 30*Gard Gardinséré 33*Gironde Girondeinséré 34*Hérault Héraultinséré 35*Ille-et-Vilaine Ille-et-Vilaineinséré 36*Indre Indreinséré 37*Indre-et-Loire Indre-et-Loireinséré 38*Isère Isèreinséré 39*Jura Jurainséré 40*Landes Landesinséré 41*Loir-et-Cher Loir-et-Cherinséré 42*Loire Loireinséré 43*Haute-Loire Haute-Loireinséré 44*Loire-Atlantique Loire-Atlantiqueinséré 45*Loiret Loiretinséré 47*Lot-et-Garonne Lot-et-Garonneinséré 48*Lozère Lozèreinséré 49*Maine-et-Loire Maine-et-Loireinséré 50*Manche Mancheinséré 51*Marne Marneinséré 52*Haute-Marne Haute-Marneinséré 53*Mayenne Mayenneinséré 54*Meurthe-et-Moselle Meurthe-et-Moselleinséré 55*Meuse Meuseinséré 56*Morbihan Morbihaninséré 57*Moselle Moselleinséré 58*Nièvre Nièvreinséré 59*Nord Nordinséré 60*Oise Oiseinséré 61*Orne Orneinséré 62*Pas-de-Calais Pas-de-Calaisinséré 63*Puy-de-Dôme Puy-de-Dômeinséré 64*Pyrénées-Atlantiques Pyrénées-Atlantiquesinséré 66*Pyrénées-Orientales Pyrénées-Orientalesinséré 67*Bas-Rhin Bas-Rhininséré 68*Haut-Rhin Haut-Rhininséré 69*Rhône Rhôneinséré 70*Haute-Saône Haute-Saôneinséré 71*Saône-et-Loire Saône-et-Loireinséré 72*Sarthe Sartheinséré 73*Savoie Savoieinséré 74*Haute-Savoie Haute-Savoieinséré 75*Ville de Paris Ville de Parisinséré 76*Seine-Maritime Seine-Maritimeinséré 77*Seine-et-Marne Seine-et-Marneinséré 78*Yvelines Yvelinesinséré 79*Deux-Sèvres Deux-Sèvresinséré 80*Somme Sommeinséré 83*Var Varinséré 84*Vaucluse Vaucluseinséré 85*Vendée Vendéeinséré 86*Vienne Vienneinséré 87*Haute-Vienne Haute-Vienneinséré 88*Vosges Vosgesinséré 89*Yonne Yonneinséré 90*Territoire de Belfort Territoire de Belfortinséré 91*Essonne Essonneinséré 92*Hauts-de-Seine Hauts-de-Seineinséré 93*Seine Saint-Denis Seine Saint-Denisinséré 94*Val-de-Marne Val-de-Marneinséré 95*Val d'Oise Val d'Oiseinséré ***** CONTENU DE LA TABLE DEPARTEMENTS ***** 1*Ain 2*Aisne 3*Allier 4*Alpes de Haute Provence 5*Hautes-Alpes 6*Alpes-Maritimes 7*Ardèche 8*Ardennes 10*Aube 11*Aude 13*Bouches-du-Rhône 14*Calvados 15*Cantal 16*Charente 17*Charente-Maritime 18*Cher 19*Corrèze 20*Corse 21*Côte d'Or 22*Côtes d'Armor 23*Creuse 24*Dordogne 25*Doubs 26*Drôme 27*Eure 28*Eure-et-Loir 29*Finistère 30*Gard 33*Gironde 34*Hérault 35*Ille-et-Vilaine 36*Indre 37*Indre-et-Loire 38*Isère 39*Jura 40*Landes 41*Loir-et-Cher 42*Loire 43*Haute-Loire 44*Loire-Atlantique 45*Loiret 47*Lot-et-Garonne 48*Lozère 49*Maine-et-Loire 50*Manche 51*Marne 52*Haute-Marne 53*Mayenne 54*Meurthe-et-Moselle 55*Meuse 56*Morbihan 57*Moselle 58*Nièvre 59*Nord 60*Oise 61*Orne 62*Pas-de-Calais 63*Puy-de-Dôme 64*Pyrénées-Atlantiques 66*Pyrénées-Orientales 67*Bas-Rhin 68*Haut-Rhin 69*Rhône 70*Haute-Saône 71*Saône-et-Loire 72*Sarthe 73*Savoie 74*Haute-Savoie 75*Ville de Paris 76*Seine-Maritime 77*Seine-et-Marne 78*Yvelines 79*Deux-Sèvres 80*Somme 83*Var 84*Vaucluse 85*Vendée 86*Vienne 87*Haute-Vienne 88*Vosges 89*Yonne 90*Territoire de Belfort 91*Essonne 92*Hauts-de-Seine 93*Seine Saint-Denis 94*Val-de-Marne 95*Val d'Oise
|