Page 1 sur 1

Importer les dates d'un fichier CSV

Posté : 28 juin 2022, 22:48
par davlongin
Bonjour, lorsque j'importe le fichier CSV les dates contenues dans le fichier CSV ne sont pas mises dans les inputs.
Merci d'avance pour vos conseils et vos aides.

Voici le code en question :
<?php
  $host = "localhost";
	$login = "root";
	$mdp = "";
	$bdd = "remplacement";
	$con = mysqli_connect($host, $login, $mdp, $bdd);
    // ...
    if(isset($_POST["validFichier"])){
        $fileName = $_FILES["file"]["tmp_name"];

        if($_FILES["file"]["size"] > 0){
            $file = fopen($fileName, "r");
            fgetcsv($file);
            $i = 1;
            while(($column = fgetcsv($file, 10000, ","))!== FALSE){
                echo "<form action='' method='POST'>
                        <input type=\"time\" name=\"missions[$i]['hDebutMission']\"     value=$column[0]>
                        <input type=\"time\" name=\"missions[$i]['hFinMission']\"       value=$column[1]>
                        <input type=\"text\" name=\"missions[$i]['idDJ']\"              value=$column[2]>
                        <input type=\"text\" name=\"missions[$i]['mailUtPV']\"          value=$column[3]>
                        <input type=\"text\" name=\"missions[$i]['duree']\"             value=$column[4]>
                        <input type=\"date\" name=\"missions[$i]['dateDebutMission']\"  value=$column[5]>
                        <input type=\"date\" name=\"missions[$i]['dateFinMission']\"    value=$column[6]>
                        <input type=\"text\" name=\"missions[$i]['rneEcole']\"          value=$column[7]><br><br>";
            $i++;
            }
                echo "  <input type=\"submit\" name=\"validMissions\" value=\"Importer les missions\">
                     </form>";
        }
        
    }
    if(isset($_POST['validMissions'])){
        // display_var_dump($_POST);
        foreach($_POST['missions'] as $mission){
            // display_var_dump($mission);
            $sqlInsert = "INSERT into mission (hDebutMission, hFinMission, idDJ, mailUtPV, duree, dateDebutMission, dateFinMission, rneEcole)
                          values ('" .$mission["'hDebutMission'"]."','" .$mission["'hFinMission'"]."','" 
                                 .$mission["'idDJ'"]."','".$mission["'mailUtPV'"]."','" .$mission["'duree'"]."','" 
                                 .$mission["'dateDebutMission'"]."','" .$mission["'dateFinMission'"]."','" .$mission["'rneEcole'"]."')";
                          $result = mysqli_query($con, $sqlInsert);
                        //   echo $sqlInsert;
        }
    }
?>
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
</head>

<body>
    <form enctype="multipart/form-data" action="" method="post">
        <div class="input-row"></br>
            <label>Choisir un fichier CSV</label>
            <input type="file" name="file" id="file" accept=".csv">
            <input type="submit" name="validFichier"> Importer</button>
        </div>
    </form>
</body>
</html>

Re: Importer les dates d'un fichier CSV

Posté : 28 juin 2022, 22:55
par or 1
quel est le code html généré (ctrl + u pour voir la source) par ce php ?

Re: Importer les dates d'un fichier CSV

Posté : 28 juin 2022, 23:16
par davlongin
le code html généré par php est sur l'image que j'ai partagé :
https://drive.google.com/drive/folders/ ... sp=sharing

Re: Importer les dates d'un fichier CSV

Posté : 18 juil. 2022, 15:48
par @rthur
Peut être car le format de date dans le CSV n'est pas le bon ?

Affiche tes requêtes SQL et teste-les dans phpmyadmin

Re: Importer les dates d'un fichier CSV

Posté : 06 oct. 2022, 22:33
par davlongin
J'ai pu le résoudre et c'était bien un problème de format de date comme tu l'avais dit (je devais faire une fonction permettant de transformer la date format anglais en format français ou inversement )