Bonjour à tous,
Je crée un module d'importation CSV. J'aimerais savoir si ma méthode est bonne et si je ne risque pas de failles, en particulier d'injection SQL.
Je voudrais surtout éviter que des éléments de code figurent dans les données utilisateurs du fichier source. Je filtre les données html avec htmlspecialchars() mais comment faire pour le SQL?
Le principe est le suivant:
- Un formulaire permet de sélectionner la table à importer;
- J'analyse la table et prépare un second formulaire;
- Dans ce nouveau formulaire en face de chaque titre de colonnes du fichier source figure une liste <select> contenant la liste des champs cible (ma table) comme ceci:
champ csv 1 <select 1>
champ csv 2 <select 2>
...
- Je stocke la liste des champs cibles sélectionnés par l'utilisateur
- Je rassemble les données du fichier source dans un tableau à deux dimensions comprenant pour chaque ligne la liste des valeurs.
- Je crée une requête préparée que j'exécute pour chaque ligne.
Partager