Je crois pas que tu puisses le faire directement depuis phpMyAdmin. Donc, tu fais un formulaire d’upload du fichier, tu le parses, et tu fais tes requetes d’insertions au fur et à mesure.
[quote=« LoneWolf, post:3, topic: 31949 »]J’aide pas c’est vrai, mais en lisant ca, j’ai l’impression assez desagreable que tu veux qu’on fasse tes devoirs de vacances… B)
LoneWolf
Neuneu doute de rien? B)[/quote]
Je dirais plutôt que je dois le faire et que je n’ai pas la moindre idée de la manière dont il faut le faire. C’est sensiblement différent.
Bon, j’i connais rien en php, mais texto, si tu trouves un bouquin qui t’expliques le php, tu devrais y arriver de la maniere suivante:
Tu lis ton fichier (trouver les fonction de lecture du fichier)
Tu parses ton fichier (tu te debrouilles pour transformer une ligne de ton fichier en chaine, que tu depouilles (en splittant la chaine avec le caractere TAB))
Pour chaque ligne (que tu stockes dans un tableau, ou que tu fait au fur et a mesure du parsing de ton fichier), tu generes une requete sql, qui va t’inscrire tes infos en base, en fonction de ce que tu a parsé.
En gros ici, tu as l’algo.
Si ca te semble trop compliqué, il est temps d’apprendre le php, voir la prog plus generalement B)
(C’est pas mechant, mais juste on dirait que tu decouvres)
Alors voici mon problème actuel : Sous IE 6 (je n’ai pas pu tester sur le 7 pour l’instant), ma variable $vartest affiche correctement l’adresse complete (c:\dossier\fichier.txt). Cependant sous Firefox (2.0), la variable ne recoit que le nom/extension (fichier.txt) du ficher et non l’adresse complète.
Existe t-il une solution pour contourner se problème ?
Bon j’ai un pote qui dis que je suis trop mechant avec toi fuky, donc je vais etre all heart et te faire pointer sur une url que t’aurais surement pu trouver tout seul en cherchant un minimum sur php.net
[quote=“LoneWolf, post:12, topic: 31949”]Bon j’ai un pote qui dis que je suis trop mechant avec toi fuky, donc je vais etre all heart et te faire pointer sur une url que t’aurais surement pu trouver tout seul en cherchant un minimum sur php.net
LoneWolf
I’m all heart.[/quote]
Ayant cherché un minimum, j’avais trouvé ceci facilement. Cependant, le problème était toujours le même avec les navigateurs. IE continuait à m’afficher le chemin complet, Firefox m’indiquait seulement le nom du fichier.
Sinon, j’ai réussi à résoudre le problème. Pour cela, j’ai du utiliser du javascript. Je ne suis pas fan de javascript (risque de ne plus marcher s’il est désactivé sur le navigateur de l’utilisateur) mais je n’ai trouvé que ça comme solution à l’heure actuel. Si quelqu’un a une solution plus belle à me proposer, je suis bien sur preneur.
Moi je comprend rien à ton probleme (et j’ai l’impression que, comme ton serveur est en local, tu fais un putain d’amalgame). Je résume le concept, le but, le moyen de l’obtenir, et tu m’arrete si je me trompe.
Tu a un fichier txt, qui contient les données que tu veut importer dans ta base. Tu cherche donc à faire une page en php, qui te permet de choisir le fichier en question, afin de le traiter.
Donc, dans ta page, tu fait un formulaire, qui contient un « input file ». Tu sélectionne le fichier, et tu fait « Valider ».
Qu’est ce qu’il se passe ? (et à mon avis, c’est là que tu t’amalgame) ton navigateur, comme un grand, envoie le fichier sur le serveur (qui pour le coup est en local). Mais dans l’absolu, ton navigateur il en sait rien que c’est en local. La variable ‹ frmmaj › ne te sert à rien (met toi dans le cas ou tu upload un fichier depuis ton pc sur geekzone. Ca lui servirait a rien de savoir que ton fichier se trouve dans c:\bidule).
Donc maintenant, il faut que tu te serve de l’url filée par Lonewolf, afin de récupérer le fichier copié dans un dossier temporaire, vers un dossier « normal » du serveur web, et de là le traiter.
Maintenant, si ce ficher est toujours au même endroit, tu t’en bat les noix, t’a pas besoin de te faire chier avec de l’upload. Sur ta page, tu met genre un message « Vérifiez que le fichier se trouve bien dans le dossier c:\trucbidule et appuyez sur Valider ».
Dans tous les cas une fois que tu a ton fichier, tu fais un truc du genre. (Je copie colle et je rajoute, je te le fais à la volée, tu vérifiera la syntaxe)
[code]<?php
// Get a file into an array. In this example we’ll go through HTTP to get
// the HTML source of a URL.
$lines = file(@‹ c:\bidule\truc.txt ›);
// Loop through our array, show HTML source as HTML source; and line numbers too.
foreach ($lines as $line_num => $line) {
$champs = explode(« \t », $line);
$query = « INSERT INTO CLIENT »;
$query .= « (NumCli, NomCli, VilleCli, TelCli) »;
$query .= « VALUES »;
$query .= « ( ».$champs[0].« , ' ».$champs[1].« ', ' ».$champs[2].« ', ' ».$champs[3].« ') »;
mysql_query($query);
}
?>[/code]
Voilà, rien de plus compliqué que ca, et tout avec du copier/coller depuis php.net (ou presque). Le truc avec PHP qu’il faut savoir, c’est que 90% des problemes que tu peut rencontrer ont leur solution sur PHP.net. Et pour les 10% qui reste… Avant que tu les recontre, tu aura largement le temps de devenir un pro de php.