IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Question toute bête appel fonction. [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 19
    Par défaut Question toute bête appel fonction.
    Bonsoir,
    Je suis bloqué sur un problème tout bête :

    J'ai un formulaire pour que mon utilisateur aille choisir une image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <form action="envoi.php" method="post" enctype="multipart/form-data">
            <p>
                    <input type="file" name="monfichier" /><br />
                    <input type="submit" value="Envoyer le fichier" />
            </p>
    </form>
    Et j'ai un code pour tester si l'extension de l'image est bonne, si oui cette image est redimensionnée.
    J'aurais aimé savoir comment je pouvais faire en sorte que le deuxième code devienne une fonction. Je ne sais pas comment passé le nom de mon image (récupéré avec le formulaire) en attribut... Car j'essaye de passer $_FILES['image']['name'] mais çà ne marche pas...

    Merci pour votre réponse.

  2. #2
    Membre chevronné
    Avatar de hornetbzz
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Octobre 2009
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Octobre 2009
    Messages : 482
    Par défaut
    Salut

    As-tu essayé de récupérer les variables postées avec ton formulaire dans ta page de traitement "envoi.php" ... ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    session_start();
    $fichier = $_POST['monfichier'];
    ...

  3. #3
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 19
    Par défaut
    Bonsoir,
    J'ai oublié de dire que je voudrais que la page pour le formulaire et le traitement soit sur la même page donc je ne suis pas sûr qu'il faille laisser action="envoi.php" sinon pour revenir à ta question, j'ai déjà :
    $fichier = basename($_FILES['image']['name']); ce qui a pour but d'avoir le nom du fichier.

  4. #4
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Il me semble que hornetbzz t'as donné une piste.
    Si tu veux un nom différent que celui de ton fichier (obtenu par $_FILES['image']['name']), et bien tu créé un champ caché dans ton formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <form action="envoi.php" method="post" enctype="multipart/form-data">
            <p>
                    <input type="file" name="monfichier" /><br />
                    <input type="submit" value="Envoyer le fichier" />
                    <input type="hidden" name="monfichier" value="nom_du_fichier" />
            </p>
    </form>
    et tu le récupère après avec : $_POST['monfichier']

    J'ai oublié de dire que je voudrais que la page pour le formulaire et le traitement soit sur la même page donc je ne suis pas sûr qu'il faille laisser action="envoi.php"
    Disons que nulle part tu indique le nom de la page où ce trouve le formulaire, difficile donc de savoir si "envoie.php" et la bonne URL ?
    Toujours est il que normalement si tu veux faire le traitement dans la même page, faut mettre le nom de cette même page, non ?

    Ceci dit, rien t'empêche de mettre une URL différente, donc de faire les traitements dans une page différentes (genre uplaod.php) et puis une fois l'uploap effectué de faire une redirection sur la page de départ via une redirection -> header('location: page_de_depart.php').
    C'est totalement transparent pour l'utilisateur.

    Pas certain que cela réponde à tes questions.

  5. #5
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 19
    Par défaut
    Bonjour,
    Tout d'abord merci pour vos explications détaillées. L'idée de la redirection est bonne même très bonne.
    Mon problème est résolu. Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 24/11/2007, 11h14
  2. [JButton] question toute bête
    Par Sp4ce dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 23/10/2007, 10h37
  3. Question toute bête?
    Par Martyin dans le forum Requêtes
    Réponses: 5
    Dernier message: 12/03/2007, 10h46
  4. Question toute bête sur les formulaires
    Par pekka77 dans le forum Langage
    Réponses: 5
    Dernier message: 01/12/2005, 23h45
  5. Question toute bête sur le passage de variable
    Par pekka77 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/11/2005, 12h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo