Créer une table à partir d'un formulaire et importer CSV

Résolu
dosco Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
dosco Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
bonjour je suis débutant donc soyez flexible svp, je demande votre indulgence svp je n'ai pas votre oeil de lynx pour le moment. j'ai fais ce code en pour charger un fichier CSV enHTML :

code html


<html>
<head> <title>Importer csv dans MySQL</title> </head>
<body>
<h2><center>Importer fichier csv</center></h2>

<form method="post" action="index.php" enctype="multipart/form-data">

<input type="hidden" name="MAX_FILE_SIZE" value="2000" />
<label for="fadet">selectionner fadet</label><br />

<input type="file" name="fadet" id="fadet" /><br />
<label for="nom_table">renommer fadet</label><br />

<input type="text" name="nom_table" value="nom fadet"/><br />

<input type="submit" name="submit" value="CHARGER" />

</form>

</body>
</html>


et maintenant je travail sur le script en PHP

code php
<?php
try
{
 $bdd = new PDO('mysql:host=localhost;dbname=base;charset=utf8', 'user', 'pass');
}
catch (Exception $e)
{
        die('Erreur : ' . $e->getMessage());
}

// on crée la requête SQL
$sql = 'CREATE TABLE $_POST['nom_table'] if not exists (
ci MEDIUMINT,
cellule VARCHAR(50),
id_equipement SMALLINT,
equipement VARCHAR(30),
id_type_equipement TINYINT,
type_equipement VARCHAR(30),
id_site SMALLINT,
site VARCHAR(100),
id_statut TINYINT,
statut TEXT,
proprietaire_site VARCHAR(30),
type_de_couverture TEXT,
nature_site VARCHAR(30),
zone VARCHAR(50),
description_du_lieux VARCHAR(100),
id_geolocalite SMALLINT,
geoloc VARCHAR(100),
type_geolocalite VARCHAR(100),
ua VARCHAR(50),
departement VARCHAR(50),
region VARCHAR(100),
district VARCHAR(100),
zc VARCHAR(50),
long_site FLOAT(5,3),
lat_site FLOAT(5,3),
date_de_mise_en_service_du_site DATE ,
date_de_mise_en_service_de_la_cellule DATE
)
ENGINE=INNODB;';

$prepare = $bdd->prepare($sql);
$res = $prepare->exec($sql);
echo 'Le fichier est bien importer';
?>

EDIT : Ajout des balises de code

mais il n'y à rien qui se crée dans ma base pour le moment! qui pourrai m'aider à trouver l'erreur et améliorer mon code dans la mesure du possible svp.

CORDIALEMENT.
A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753
 
Bonjour,


il n'y à rien qui se crée dans ma base pour le moment! qui pourrai m'aider à trouver l'erreur

Il n'y a pas d'erreur... tu n'as juste pas coder l'import des données....


Pour l'instant tu as fait :
Connexion à la BDD
Creation de la table (qui recevra les données) si elle n'existe pas déjà

Il te reste à faire :
1 - Ouverture du fichier csv
2 - Lecture du fichier ligne par ligne
3 - Insertion de chaque ligne dans la BDD


et améliorer mon code dans la mesure du possible

Pour ce qui est de l'amélioration.. tu peux déjà ajouter la prise en compte des erreurs PDO au cas où.
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs



0
dosco Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   194
 
mais je penses que la table devrait se créer vide même si j'ai pas encore importé les données en faite je procède par étape!
0