Calambiel a écrit: |
Je pense que c'est un bon topic pour ce genre de satisfactions :
(excusez la qualité patate, c'est pour peser moins lourd ) Donc voilà, lot du concours arrivé, encore merci à l'équipe si certains passent par ici. |
gautierS a écrit: |
Super pour toi
Au boulot j'ai un vieux mysql5-6.60gp pour un site mais ce n'est pas dans mon rayon de compétence, pire, je ne peut plus mettre a jour une table de ma base à cause d'OVH ... C'est bien une chose que j'aimerais régler mais j'ai pas trop envie de casser un site en production que je ne maîtrise absolument pas :/ https://community.ovh.com/t/linstruction-sql-load-data-nest-plus-autorisee-chez-ovh-en-mutualise-sur-mysql/12350/55 |
Code: |
<?
// Le code proposé ci-dessus ne l'est qu'à titre d'exemple pour que vous puissiez // comprendre comment remplacer cette fonction, libre à vous de développer // votre propre moyen plus efficace pour insérer des données. $NomDuFichier = "data.csv"; // ouverture du fichier csv en lecture $handle = fopen($NomDuFichier, "r"); if ($handle) { // decomposition de chaque ligne du fichier csv while (($data = fgetcsv($handle, 1000, ";", "\"")) !== FALSE) { $num = count($data)-1; // generation de la requete SQL $query = "INSERT INTO `test` VALUES ("; for ($c=0; $c < $num; $c++) { $query .= "'" . mysql_real_escape_string($data[$c]) ."',"; } $query .= "'" . mysql_real_escape_string($data[$num]) ."')"; // insertion de la ligne dans la base MySQL mysql_query($query, $link) or die (mysql_error()); $query = NULL; } // fermeture du fichier csv fclose($handle); } else { echo "<p>Erreur: impossible d'ouvrir le fichier.</p>\n"; exit(1); } ?> |
Code: |
// ouverture du fichier csv en lecture
$filename = "data.csv"; $handle = fopen('data/'.$filename, "r"); if ($handle) { // decomposition de chaque ligne du fichier csv $row = 0; while (($data = fgetcsv($handle, 1000, ";", "\"")) !== false) { $num = count($data)-1; if ($row==0) { $query = "INSERT INTO `test` VALUES ("; } else { $query .= ",("; } $query .= "'" . mysql_real_escape_string($data[0]) ."'"; for ($c=1; $c < $num; $c++) { $my_valeur=$data[$c]; if ($my_valeur!="NULL") { $query .= ",'" . mysql_real_escape_string($data[$c]) ."'"; } else { $query .= ",NULL"; } } $query .= ")"; if ($row==100) { // insertion des lignes dans la base MySQL mysql_query($query, $link) or die(mysql_error()); $query=""; $row=0; } else { $row++; } } if ($query!="") { // il reste des lignes à insérer mysql_query($query, $link) or die(mysql_error()); } // fermeture du fichier csv fclose($handle); } else { echo "<p>Erreur: impossible d'ouvrir le fichier.</p>\n"; exit(1); } |
Sujets similaires |
|||||
Sujet | Auteur | Forum | Réponses | Posté le | |
---|---|---|---|---|---|
Un LOL du jour judiciaire ? | Alfie | Le poulailler | 3 | 12 mars 2024 à 17:24 | |
Post-it : Le truc intéressant du jour - 2024 | jujunet | Le poulailler | 26 | 07 janvier 2024 à 09:14 | |
Post-it : Le Gros LOL du jour 2024 | garzebuth | Le poulailler | 56 | 06 janvier 2024 à 13:18 | |
Post-it : Insatisfaction du jour 2024 | cordobaseb | Le poulailler | 176 | 04 janvier 2024 à 14:27 | |
Post-it : Satisfaction du jour 2024 | Sapinsympa | Le poulailler | 122 | 02 janvier 2024 à 14:03 |