1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
<?php
$cn=mysql_connect("localhost","root","")or die ("probleme de connection");
mysql_select_db("dbmou",$cn)or die("probleme de selection de base de donnée");
//Faire une requete sql pour selectionner uniquement les ID d'ordre de mvt puis mettre le resultat dans un tableau
$sql_num = "SELECT ID FROM user";
$query_num = mysql_query($sql_num) or die ('Erreur SQL_num : '.mysql_error());
$data_num = mysql_fetch_assoc($query_num);
$tot_num = mysql_num_rows($query_num);
$tab_num = array();
$i = 0;
while($data_num = mysql_fetch_assoc($query_num)) {
$tab_num[$i] = $data_num['ID'];
$i++;
}
//Préparation des variables $DOSSIER, $FICHIER et $TABLE
$nom_fichier = 'fichier.csv'; //"nom_du_fichier_csv";
// Lancement de la lecture du fichier csv et insertion des données dans la table Mysql nom_de_ma_table_sql
$fichier = fopen($nom_fichier, "r"); //Ouverture du fichier en lecture
while (!feof($fichier)){//tant qu'on est pas a la fin du fichier :
// On recupere toute la ligne
$uneLigne = fgets($fichier,4000);
//On met dans un tableau les differentes valeurs trouvés (ici séparées par un ',')
$tableauValeurs = explode(",", $uneLigne);
// Recensement des données, ici il y a 20 champs donc de [0] a [6]. (Etape facultative)
$valeurs = "('$tableauValeurs[0]', '$tableauValeurs[1]', '$tableauValeurs[2]', '$tableauValeurs[3]', '$tableauValeurs[4]', '$tableauValeurs[5]', '$tableauValeurs[6]', '$tableauValeurs[7]', '$tableauValeurs[8]', '$tableauValeurs[9]', '$tableauValeurs[10]', '$tableauValeurs[11]')";
//Vérification de la presence de la ligne dans la table
if(isset($tableauValeurs[5])){
if(($tableauValeurs[5] != 'ID') && !in_array($tableauValeurs[10], $tab_num)){
// On crée la requete pour inserer les donneés
$sql = "INSERT IGNORE INTO user (ID,LAST_NAME, FIRST_NAME, LOGIN, WKG_NAME, MAIL, TEL) VALUES ('$tableauValeurs[0]', '$tableauValeurs[1]', '$tableauValeurs[2]', '$tableauValeurs[3]', '$tableauValeurs[4]', '$tableauValeurs[5]', '$tableauValeurs[6]') ON DUPLICATE KEY UPDATE ID= '$tableauValeurs[0]'";
$req = mysql_query($sql)or die('<br> Erreur SQL ! '.$req.'<br />'.mysql_error());
}
else{ // Affiche le numero de la ligne qui n'a pas ete inserée
//
echo '<font style="color:red;">'.$tableauValeurs[5]."</font><br>";
}
}
// la ligne est finie donc on passe a la ligne suivante de la boucle While
}
//vérification et envoi d'une réponse à l'utilisateur
if($req)
{
echo '<body onLoad="alert(\'Ajout dans la base de données effectué avec succès \')">';
echo '<meta http-equiv="refresh" content="0;URL=admin.php">';
}
?> |
Partager