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 :

[Upload] $_POST d'un input type=hidden


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut [Upload] $_POST d'un input type=hidden
    Bonjour,

    Je suis en train de me chauffer sur le script de FancyUpload qui permet l'upload multiple de fichiers.

    Je souhaiterais envoyer des données en même temps que le fichier afin de définir les chemins d'upload dans les répertoires. Je pensais faire ça via l'uitlisation de <input type="hidden" name="ref" value="test"/>.

    Dans mon fichier PHP, je ne sais pas récupérer la valeur de mon hidden.
    Jusqu'à présent, je n'ai fais ça qu'avec de l'AJAX en envoyant via la méthode POST ref=test et en faisant dans le PHP $_POST['ref'].

    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Ben euh...
    si dans ton formulaire tu as
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="ref" value="test">
    dans la page d'arrivée, tu le recupères par $_POST['ref']... je ne comprends pas bien ton problème
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    donc si je fais $_POST['ref'] je reçois 'test' ?

    En fait mon formulaire serait en 2 temps :

    J'envoie des données texte que j'insère dans ma BDD et qui me permettent de créer mes répertoires (pour un UPLOAD futur). Je renvoie les valeurs avec lesquelles j'ai créé mes répertoires dans un nouveau formulaire dans des input type hidden
    Puis, l'upload multiple de fichiers dont le chemin d'upload est défini par les input type hidden

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Ouh la !
    Bon je résume : tu as un formulaire 1 visible, dont les données sont insérées dans ta base de données ET réinsérées dans un formulaire 2 caché pour renvoi vers un 3e script. C'est bien ça ?
    genre page1 :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="mon_champ" value="chaussette">
    page2 (récupération du formulaire de la page 1 et renvoi vers la page 3)
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="mon_champ" value=" <?php echo $_POST['mon_champ']; ?> ">
    page3 récupération de la valeur
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
     echo "la valeur de mon_champ était ".$_POST['mon_champ'];
    Est-ce plus clair comme ça ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    En gros c'est ça ! Du coup, je cherche à poster le champ hidden...

    Mais pour être plus clair...

    Formulaire de la page 1 (PHP) - données text
    --> les données sont envoyées via JAVASCRIPT + PHP
    --> les données permettant de définir le chemin d'accès au répertoire sont envoyées en réponse et insérées dans un input HIDDEN

    Formulaire de la page 2 (PHP) - multi upload
    --> les données sont envoyées via PHP (pour le moment, ultérieurement avec JAVASCRIPT + PHP pour afficher la fiche récapitulative)

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    En fait, tu cherches à poster tes champs hidden de façon automatique ?
    En règle générale, je mets un bouton submit avec une mention du genre "suivant >". Les champs étant cachés, tout ce que voit l'utilisateur c'est le bouton.
    Sinon on doit pouvoir faire quelque chose avec du js (la fonction submit...)
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    Je ne sais pas vraiment ce que tu veux dire par "de façon automatique" mais je cherche à récupérer la valeur inscrite dans mes champs hidden pour pouvoir faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $rep = $_POST['rep'];
    $sousrep = $_POST['sousrep'];
    $sousousrep = $_POST['sousousrep'];
    move_uploaded_file($FILES['blabla']['tmp_name'],$rep.'/'.$sousrep.'/'.$soussousrep.'/'.$FILES['balbla']['name']);
    Ce qui est étrange, c'est que pour l'instant si j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="rep" value"test"/>
    que j'ai créé au préalable un répertoire 'test' et que je cherche à récupérer avec $_POST['rep'], je ne récupère rien.


    du coup j'aurais dans mon formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="rep" value="?????"/>
    Mais je ne sais pas comment poster ma réponse AJAX (du 1er formulaire) dans value

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    hum, je commence à être larguée
    Le problème, c'est de remplir les champs hidden ou de les envoyer à la page d'après ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    Excuses moi, ne mélangeons pas tout en même temps. (en fait c'est les 2)

    Le 1er problème c'est l'envoi du contenu des champs hidden vers le fichier faisant l'upload.

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    Ce qui est étrange, c'est que pour l'instant si j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="rep" value"test"/>
    que j'ai créé au préalable un répertoire 'test' et que je cherche à récupérer avec $_POST['rep'] ou $_POST['rep']['value'], je ne récupère rien.

  11. #11
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Pour l'instant, comment fais-tu l'envoi ? par un bouton submit ?
    Pour tester ce qui arrive réellement dans $_POST, rien ne vaut un bon vieux var_dump
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo '<pre>';
    var_dump($_POST);
    echo '</pre>';
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    J'ai fait un test dans un fichier à part... excellent petit outil ce var_dump...

    array(1) {
    ["rep"]=>
    string(3) "hey"
    et quand je fais :

    j'obtiens bien 'hey'

    Mais non... ça ne marche toujours pas...dans le fichier d'upload...

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    Afin de pouvoir obtenir le résultat de var_dump dans ma programmation, saurais-tu me dire comment faire pour renvoyer le résultat avec


  14. #14
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    var_dump fait déjà un affichage du contenu de la variable. Donc pas besoin d'utiliser un echo dessus (http://fr.php.net/manual/fr/function.var-dump.php)
    Ce que tu cherches, c'est peut-être var_export

    En ce qui concerne ton porblème de départ, peux-tu donner le code de ton formulaire avec les champs hidden et celui de l'arrivée ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    pour var_dump OK ! Mais je ne sais pas comment retourner un message de la page PHP vers la page HTML

    Sinon, pour le formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" 
        "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Jarodxxx</title>
    </head>
    <body>
    	<div id="container">
    		<form action="js/upload.php" method="post" id="photoupload" enctype="multipart/form-data">
            <div class="halfsize"><fieldset>
                <legend>Upload</legend>
            <div class="label emph">
    		  	<label for="photoupload-filedata-1">Upload Photos:<span>Selectionnez vos photos puis cliquer sur UPLOAD.</span></label>
     
    			<input type="hidden" name="rep" value="test"/>
     
    			<input type="file" name="Filedata" id="photoupload-filedata-1" />
    		</div>
            </fieldset></div>
    			<div class="halfsize2">
    				<fieldset>
    					<legend>File d'attente</legend>
    					<div class="note" id="photoupload-status">Verifier vos photos ...<br /></div>
    					<ul class="photoupload-queue" id="photoupload-queue"><li style="display: none">&nbsp;</li></ul>
     
    				</fieldset>
    			</div>
    			<div class="clear"></div>
    			<div class="footer"><input type="submit" class="submit" id="profile-submit" value="UPLOAD"/>
    			</div>
    	  </form>
    	</div>
     
    </body>
    </html>

  16. #16
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bizarre... ça me parait correct. Tu cliques sur le bouton Upload, ça te renvoie sur upload.php et là le var_dump est vide ? bizarre, vous avez bizarre ?

    Pour passer du php au html, un simple echo suffit effectivement.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 239
    Par défaut
    Merci à toi Celira mais je crois que je vais jetter l'éponge... je n'avance pas dans mon projet et ce script FancyUpload (bien que super tentant) me demande trop d'attention ! Je me meurs mentalement

    [EDIT] Bien plus simple et bien plus efficace... avec style et belle mise en page : une MULTI UPLOAD --------> ici

    Pour le POST d'un (dans un formulaire HTML) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="monNom" value="ChuckNorris"/>
    Vers un fichier PHP, il suffit de faire :
    Et on obtient :
    C'est pas beau ça !

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

Discussions similaires

  1. Souci avec le input type='hidden'
    Par Tyrael62 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 02/07/2008, 17h23
  2. Recuperer la valeur d'une liste dans un input type hidden
    Par KiranoO dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/05/2008, 12h12
  3. html:hidden et <input type="hidden">
    Par minimoi1234 dans le forum Struts 1
    Réponses: 5
    Dernier message: 05/05/2008, 14h54
  4. input type = hidden
    Par taffMan dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/09/2006, 22h31
  5. [input type hidden] devient nul
    Par Nadine dans le forum ASP
    Réponses: 17
    Dernier message: 25/04/2005, 20h26

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