Page 1 sur 1

UPDATE du lien d un fichier

Posté : 14 févr. 2008, 18:36
par ulmo
Bonjour a tous,

je cherche a mettre a jour ma bd via un formulaire pour modifier un lien vers un fichier.

Mon code ressemble a ca :
if(isset($_POST['boninter']))      $boninter=$_POST['boninter'];
else      $boninter="";

$nouveau_chemin = 'C:/Program Files/EasyPHP 2.0b1/www/optima/images/'; 
move_uploaded_file($_FILES['boninter']['tmp_name'], $nouveau_chemin.$_FILES['boninter']['name']); 
$newboninter = $_FILES['boninter']['name'];
Seulement voila il m affiche :
Notice: Undefined index: boninter in C:\Program Files\EasyPHP 2.0b1\www\optima\modificheitc.php on line 45

Notice: Undefined index: boninter in C:\Program Files\EasyPHP 2.0b1\www\optima\modificheitc.php on line 45

Notice: Undefined index: boninter in C:\Program Files\EasyPHP 2.0b1\www\optima\modificheitc.php on line 46


Pourtant un echo sur ma variable $boninter me renvoie la bonne valeur.

Merci d avance

Posté : 15 févr. 2008, 09:47
par d0m
Premièrement c'est bien de mettre les messages d'erreur, mais , bien que là on devine facilement, indique nous quelles sont les lignes 45 et 46... on n'a pas tout ton code.

Pour ton problème il me semble que tu t'emmêles un peu les pinceaux.

PHP ne trouve pas l'élément $_FILES['boninter'], ton champ boninter est il bien un champ de type file?

Posté : 15 févr. 2008, 09:52
par ulmo
salut,

alors la ligne 45 et 46 :
move_uploaded_file($_FILES['boninter']['tmp_name'], $nouveau_chemin.$_FILES['boninter']['name']); 
$newboninter = $_FILES['boninter']['name'];
et effectivement mon champ boninter est bien de type file

Posté : 15 févr. 2008, 10:01
par d0m
vérifie le contenu de $files :
print_r($files);

Posté : 15 févr. 2008, 10:07
par ulmo
alors un : print_r($boninter); me renvoie bien l emplacement d origine du fichier
mais un : print_r($newboninter); me donne rien.

Posté : 15 févr. 2008, 10:10
par d0m
normal l'erreur dit :

Code : Tout sélectionner

Undefined index: boninter
Le tableau $_files ne contient pas apparement d'informations concernant le champ 'boninter'

affiche le contenu de $_files.

et peux tu donner le code de ton formulaire html?

Posté : 15 févr. 2008, 10:17
par ulmo
Oula comprend un beignet moi :?

mon formulaire html :
<form NAME="client_<?php echo $id;?>" method="POST" action="modificheitc.php">
<input type="hidden" /><input name="boninter" type="file" class="Style2" value="" size="19" /><br>
<input type="submit" value="envoyer" name="envoyer">
</form>
désolé comprend pas ton histoire de : print_r($files); il me renvoie une erreur comme quoi $files n existe pas normal non?

Posté : 15 févr. 2008, 10:24
par d0m
$_files est la variable d'environnement contenant les informations des fichiers téléchargés, un genre de $_POST pour les champ de type file seulement.

Erreur de ma part, c'était $_files et non $files

Ton problème vient de la balise du formulaire, quand il y a des champs de type file il faut ajouter en attribut : enctype="multipart/form-data"
<form NAME="client_<?php echo $id;?>" method="POST" action="modificheitc.php" enctype="multipart/form-data">

Posté : 15 févr. 2008, 10:28
par ulmo
Merci beaucoup me suis arrache les cheveux toute la journée d hier, vont pouvoir repousser un peu aujourd hui :wink:

Merci a tous et longue vie à phpfrance :)