Upload

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Upload

par stever » 31 août 2006, 19:43

avant de créer la table

+ créer une liste dans le fichier etxte

+ mettre en place le upload

je voulais savoir s'il y avait une grosse bourde visible.

car parfois les script marche mais cela ne veux pas dire qu'ils sont bien fait

Méthode plus courte
Erreur mais fonction par chance ou coincidence
Vérifications a faire pour la sécurité (connexion, variabble...).




Ca peut fonctionner et etre un tres mauvais script :D

Je sais que je passe plutot par un exec("/chemin/vers/mysql.exe LOAD DATA ...") pour éviter ces erreurs
Zeus peux tu développer ton idée ?

par zeus » 31 août 2006, 19:41

Il y a un bemol que je vois, c'est que cette commande est très capricieuse au sujet des chemins vers les fichiers.

Je sais que je passe plutot par un exec("/chemin/vers/mysql.exe LOAD DATA ...") pour éviter ces erreurs

par Cyrano » 31 août 2006, 19:34

L'as-tu testé ?

par stever » 31 août 2006, 19:17

ok merci les gas pour les info et le tuto (en français trop cool).

le code je le met dans un script php pour le lancer

je fais juste un fichier
upload.php

Code : Tout sélectionner

<?php $liendb=mysql_connect("serveur", "login", "motdepasse"); mysql_select_db("nombase"); $sql=" LOAD DATA INFILE 'exemple2.txt' INTO TABLE nom_de_table FIELDS TERMINATED BY '|' LINES TERMINATED BY '|\n' (codepostal, code, nom) "; mysql_query($sql); mysql_close($liendb); ?>
Le script complet est il bon ou il me manque des trucs

par zeus » 31 août 2006, 19:13

par Cyrano » 31 août 2006, 19:10

Le principe est simple : tout ce qui se trouve entre [ crochets ] est optionnel. Lorsque plusieurs valeurs séparées par un "pipe" | sont présentes entre les crochets, ça signifie qu'on peu utiliser l'une ou l'autre selon la nécessité du moment.

La commande minimum obligatoire sera donc:

Code : Tout sélectionner

LOAD DATA INFILE 'nom_de_fichier.txt' INTO TABLE nom_de_table
Les autres éléments vont se placer là où ils sont indiqués dans la documentation, documentation que je t'invite à consulter, elle est disponible en français avec force détails.

Upload

par stever » 31 août 2006, 17:32

Salut

J'aimerai envoyer un fichier contenant des info dans une base de données.

Je viens de trouver cela sur la documentation MySQL

Code : Tout sélectionner

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'nom_de_fichier.txt' [REPLACE | IGNORE] INTO TABLE nom_de_table [FIELDS [TERMINATED BY '\t'] [[OPTIONALLY] ENCLOSED BY ''] [ESCAPED BY '\\' ] ] [LINES TERMINATED BY '\n'] [IGNORE nombre LINES] [(nom_de_colonne,...)]
Si y a quelqu'un qui a l'habitude de faire des upload de fichier pouvez vous me commenter (en français simple, pas en jargon d'info) chaque ligne en expliquant leur role et s'il faut tout mettre ou s'il y a des truc optionnel.

Au fait ou dois je mettre mon fichier texte ?
le chemin du fichier s'écrit à partir d'ou (du dossier qui contient le script, du dossier qui contient MySQL...).