Page 1 sur 1

recuperation d'une varibale

Posté : 18 mai 2008, 15:18
par kai
Bonjour,

Je viens de reprendre le travail de quelqun et j'ai un probleme pour recuperer la valeur de ma variable banniere

voici mon code (tout ce ci ce trouve sur la meme page )

formulaire ajout :
if($_GET['action']=="add"){ 
        
                $type = $_POST['type'];
                $nom = $_POST['nom'];
                $jour = $_POST['jour'];
                $mois = $_POST['mois'];
                $annee = $_POST['annee'];
                $prosp = $_POST['prosp'];
                $clients = $_POST['clients'];
                $vip = $_POST['vip'];
                $part = $_POST['part'];
                $gest = $_POST['gest'];
                $admin = $_POST['admin'];
                $mail = $_POST['mail'];
                $articles = $_POST['articles'];
                $texte = $_POST['texte'];
                $banniere = $_POST['banniete'];
                
                $texte = str_replace("<","<",$texte); 
                $texte = str_replace(">",">",$texte);
                $texte = str_replace("&","&",$texte);
        
?>
<form name="leform" method="post" action="?cat=newsletter&action=add2">
<br />
<table width="90%" border="0" align="center" cellpadding="3" cellspacing="0" class="cadrenoir">
<tr>
<td colspan="2" align="left" class="fen_titre">› Banni&egrave;re </td>
</tr>
<tr>
<td colspan="2" class="form0" ><input type="file" id="banniere" name="banniere"/></td>
</tr>
<tr>
<td colspan="2" align="left" class="fen_titre">› Newsletter </td>
</tr>
recuperation des variables :
if($_GET['action']=="add2"){ 
        
        if($_POST['prosp']==1) $prosp=1; else $prosp=0;
        if($_POST['clients']==1) $clients=1; else $clients=0;
        if($_POST['part']==1) $part=1; else $part=0;
        if($_POST['admin']==1) $admin=1; else $admin=0;
        if($_POST['redac']==1) $redac=1; else $redac=0;
        if($_POST['vip']==1) $vip=1; else $vip=0;
        if($_POST['gest']==1) $gest=1; else $gest=0;
        if($_POST['mail']==1) $mail=1; else $mail=0;
        $groups = $prosp.";".$clients.";".$part.";".$admin.";".$redac.";".$vip.";".$gest.";".$mail;
        
        $sql = requete d'insertion ....
        $result = mysql_query($sql);
        
        
        // gestion de la banniere
        
        if($_FILES['banniere']['name']==""){

header('Location: index.php?cat=newsletter&message=uploadfail1');

}
else{
         $photo_name=$_FILES['banniere']['name'];
        
if($_FILES['banniere']['size']>5000000){
        echo("Le fichier est trop volumineux");}
else{
        $type= split ("[.]", $photo_name);
         
        
         $chemin = '../test/';
        $cheminmini = '../test/'; // dossier où sera déplacé le fichier
        if(!(is_dir($chemin))) {
        mkdir ($chemin, 0700); 
        }
        
        $tipe=$type[1];
        $fichier_temporaire = $_FILES['banniere']['tmp_name'];
                 if( !is_uploaded_file($fichier_temporaire) )
                {
                                                        header('Location: index.php?cat=newsletter&message=uploadfail2');
                                         exit;
                }
il a une suite a ce script d'ajout d'image mais le probleme n'est pas après
ce scipt marche sur d'autres application.

mon probleme est qu'il ne reconnait pas la valuer de : $_FILES['banniere']['name'], pour lui elle est vide alors que je choisi bien un fichier a ajouter.

je ne vois pas du tout ou est mon probleme

ps : le reste du code des recuperations de varibales marche impec

merci d'avance

Posté : 18 mai 2008, 15:22
par katagoto
Y a une erreur de syntaxe :roll:

Posté : 18 mai 2008, 16:34
par kai
pourrait tu me dire ou stp, car si j'ai chercher mais je ne vois pas c'est pour ca que je demande votre aide

merci

Posté : 19 mai 2008, 12:03
par Ryle
Pour la syntaxe, y en a une ici :
$banniere = $_POST['banniete'];
Pour ton problème de transfert de fichier, il faut spécifier dans le formulaire que celui-ci va également envoyer un fichier en plus des données du formulaire. Cela se fait en ajoutant l'attribut enctype="" dans le formulaire avec la valeur qui va bien pour pouvoir transférer des données :)