Problème AJAX - input type file
Bonjour !
Je voudrais savoir s'il est possible de récupérer le nom d'un fichier obtenu dans un input type="file" et de le transmettre via une fonction ajax.
J'ai pour le moment essayé de faire cela de cette manière :
var nomduFichier = document.getElementById("importFile").value;
$.ajax({ type:"POST", url:"mailing.php", data: "nomduFichier="+nomduFichier, });
Malheureusement quand je veux récupérer la variable nomduFichier dans une variable de type $filename = $_FILES[''.$nomduFichier.'']['name']; j'obtiens une erreur me disant que l'index est indéfini. Quelqu'un a-t-il une solution à mon problème ?
Merci d'avance
La solution est de ne pas le faire avec AJAX :D
En fait, pour des raisons de sécurité, tu n'as pas le droit d'accéder au contenu des champs input de type file.
De plus, pour les même raisons de sécurité, tu n'es pas autorisé à accéder aux fichiers sur le disque dur. (Même si on peut avoir une solution spécifique si c'est nécessaire)
Et pour finir, le tableau $_FILES contient les fichier uploadés, il ne permet pas d'accéder aux fichiers locaux du client.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
D'accord et merci. J'ai abandonné l'idée d'AJAX cet après-midi, ça m'embête un peu car je dois récupérer des données dans plusieurs formulaires mais je pense pouvoir le faire :)
Par contre quand tu dis qu'on ne peut pas accéder aux fichiers sur le disque tu veux dire en écriture ? Parce que j'accède bien à un fichier du disque (fichier .zip) que je décompresse sur mon serveur...
En tout cas merci encore pour ta réponse et bonne soirée
Quel est le problème des formulaires multiples ?
On ne peut accéder aux fichiers en lecture et en écriture. En fait, le fichier auquel tu accèdes dans ton script PHP, c'est le fichier téléchargé, lu par le navigateur sur requête de l'utilisateur. Mais finalement, tu ne peux pas accéder directement au fichier sur le disque de l'utilisateur, uniquement à une copie qu'il a bien voulu que le navigateur envoie au serveur.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Merci pour les explications sur les fichiers.
Concernant les formulaires multiples le problème c'est que je ne peux pas les "submiter" tous en même temps
Il faut alors tout mettre dans le même formulaire ;)
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: