Je suis face à un mystère.... et pourtant tout paraissait simple au départ. Je veux juste intégrer dans une base de données des champs qui se trouve dans un fichier csv.
Extrait du fichier csv
--------------------------------
Code : Tout sélectionner
01/11/2016 00:00;0;01/11/2016 00:00;0
01/11/2016 00:01;0;01/11/2016 00:01;0
01/11/2016 00:02;0;01/11/2016 00:02;0-----------------------------
function fct_ImportDataCOT_COV($IdFichierImportCOT,$sNomFichier)
{
$conn=connectMaBase();
/*Initialisation des variables*/
$i=0;
$sFileName="";
/*Ouverture du fichier en lecture seule*/
$sFileName = './upload/COT/'.$sNomFichier;
$handle = fopen($sFileName, 'r');
/*Si on a réussi à ouvrir le fichier*/
if ($handle)
{
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
//on rempli la table
$sql = 'INSERT INTO tvaluecot ';
$sql = $sql."(DateTxt,Value,IdFichierImportCOT)";
$sql = $sql." VALUES (";
$sql = $sql."'".$data[0]."',";
$sql = $sql."'".$data[1]."',";
$sql = $sql." 3";
$sql = $sql." )";
//on lance la commande (mysql_query) et au cas où,
$result1 = $conn->query($sql);
if (!$result1)
{
printf("ERREUR SQL : %s\n Message d'erreur : %s\n", $sql, $conn->error);
}
}
}
/*On ferme le fichier*/
fclose($handle);
}
mysqli_close($conn);
}
// On obtient en base
Code : Tout sélectionner
Jour Value DateTxt DateSimple IdFichierImportCOT
0000-00-00 0 01/11/2016 00:05 3
0000-00-00 0 01/11/2016 00:04 3
0000-00-00 0 01/11/2016 00:03 3
0000-00-00 0 01/11/2016 00:02 3Code : Tout sélectionner
UPDATE `tvaluecot` SET `DateSimple`= LEFT(`DateTxt`,10)Code : Tout sélectionner
Jour Value DateTxt DateSimple IdFichierImportCOT
0000-00-00 0 01/11/2016 00:05 01/11 3
0000-00-00 0 01/11/2016 00:04 01/11 3
0000-00-00 0 01/11/2016 00:03 01/11 3
0000-00-00 0 01/11/2016 00:02 01/11 3Code : Tout sélectionner
Jour Value DateTxt DateSimple IdFichierImportCOT
0000-00-00 0 01/11/2016 00:05 01/11/2016 3
0000-00-00 0 01/11/2016 00:04 01/11/2016 3
0000-00-00 0 01/11/2016 00:03 01/11/2016 3
0000-00-00 0 01/11/2016 00:02 01/11/2016 3Merci d'avance pour votre aide,
Olimarine