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

HTML Discussion :

Problème d'intégration avec l'input [file]


Sujet :

HTML

  1. #1
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut Problème d'intégration avec l'input [file]
    Bonjour,

    Je ne savais comment pas intitulé mon post, j'en suis d'avance désolé...

    Voici le contexte:

    J'ai un formulaire avec un champ "text" et un champ "file" sur le "siteA.com"

    Sur mon site à moi, intitulé "siteB.com", je veux proposer aux gens le même formulaire.

    Lorsque ce formulaire, le visiteur aura cliqué sur le bouton "submit", au lieu que les données soient traitées sur siteB.com, elles seront correctement envoyées avec la méthode "POST" sur la page du formulaire de siteB.com afin que les données soit postées sur siteB.com et non siteA.com

    Jusque la, rien d'impossible avec le champ "text"!

    Le seul hic, c'est comment puis-je faire pour des champs de type "file"?

    Comment procéder pour que l'image ajoutée sur le formulaire du siteA.com soit postée sur le formulaire du siteB.com?

    Peut-être avec CURL? Si oui, comment avec le fichier "file"?

    D'avance merci pour votre précieuse aide!

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    Salut,
    je ne sais pas trop si cela fonctionnerais mais si tu utilises par exemple php include pour le formulaire dans ta page et que tu change 2 3 choses sur la page siteB (juste le sistême d'upload par exemple) ça pourrait peut être fonctionner non ?
    Juste une idée comme ça.

  3. #3
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    En fait je ne dois pas intégrer le formulaire du siteA, je dois refaire un formulaire avec +- les mêmes champs et lors du post, envoyer certaines infos au siteA. C'est un peu comme si on remplissait le formulaire sur siteA et qu'on le valide sauf qu'on valide le formulaire sur le siteB et le siteA traite les données comme si on avait rempli son propre formulaire...

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    Be je ne sais pas si c'est possible mais pourquoi ne pas appliquer 2 method="post" ?
    Un sur le siteA et l'autre sur le site B ? Comme ça chacun des deux fichiers php appelé fait se dont du a besoin sur tel ou tel site.

  5. #5
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    Je ne vois pas trop ce que tu veux dire...

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    Pardon,
    je voulais dire sur un même formulaire appeler deux fichier php, ceux qui traitent les données envoyés.

    Quelque choses du style :
    dans ton formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form  method='post' id='formulaire'>
    Tu transmet à un javascript pour la validation et dans le javascript après les étapes de validation tu fait quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $.post("formsiteA.php", $("#formulaire")
    $.post("formsiteB.php", $("#formulaire")
    Et sur chaque formsiteA ou formsiteA.php tu traite ce dont a besoins.

    J'ai le souvenir d'avoir vu quelque chose comme ça mais en toute honnêteté je ne saurais le faire.

  7. #7
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    Ha d'accord j'ai pigé maintenant c'est plus clair!

    Tu veux dire, au moment de valider le formulaire, d'envoyer une requête Ajax en méthod POST pour chaque site où je souhaites poster les données c'est ça?

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    Oui dans l'idée c'est exactement ça. Mais comme je te l'ais dit je ne sais pas le faire.

  9. #9
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    Pas de souci, je sais très bien effectuer ce genre de requête! Merci pour l'idée!

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    Bon courage dans ce cas !

  11. #11
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    Malheureusement c'est une fausse bonne idée...

    En effet, il est impossible d'uploader un fichier de type "file" avec une requete POST Ajax (pourquoi? Surement pour des raisons de sécurité).

    Une alternative qui peut fonctionner sans problème c'est d'utiliser la librairie cURL de PHP.

    J'ai trouvé un tutoriel ici

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 30
    Points : 35
    Points
    35
    Par défaut
    Dans ton from de régistration Utilise la ligne suivante pour les Images.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="file" name="photo" />
    Ce qui va être parfait mais ta une modif a faire au niveau de ta premiere ligne for forms a faire tu doi utiliser la ligne suivante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form id="formulaire" method="post" enctype="multipart/formdata">
    À ce moment là tulorsqur la requête est envoyer dans tes deux base de donnée.
    Tu ajoute les lignes suivantes à ta requête.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    if (is_uploaded_file ($_FILES ['photo'] ['tmp_name']))  {
    move_uploaded_file ($_FILES ['photo'] ['tmp_name'],
    $_FILES ['photo'] ['name'] ) ;
    print ("<img src='".$_FILES ['photo'] ['name']."' />") ;
    }
     
    else {
    Die ("Problème d'envoi du fichier.")
    }
     
    ?>
    De cette façon l'url de l'image sera genéré automatiquement et sera placer dans le fichier ou tes fichier de requête sont placé.
    Si tu veu specifier un dossier specifique qui an une autre place voici commen proceder mais fait gafe car les Images seront en double c'est a dire 1 pour le siteA et une autre pour le siteB.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "images/"$_FILES ['photo'] ['name']
    En gros J'ai du copier collé d'un livre php que j'ai à la maison je c pas si j'ai bien écrit le script mes sa vaux le coup d'aissayer.

  13. #13
    Membre confirmé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Points : 570
    Points
    570
    Par défaut
    Citation Envoyé par ShaunY Voir le message
    Dans ton from de régistration Utilise la ligne suivante pour les Images.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="file" name="photo" />
    Ce qui va être parfait mais ta une modif a faire au niveau de ta premiere ligne for forms a faire tu doi utiliser la ligne suivante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form id="formulaire" method="post" enctype="multipart/formdata">
    À ce moment là tulorsqur la requête est envoyer dans tes deux base de donnée.
    Tu ajoute les lignes suivantes à ta requête.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    if (is_uploaded_file ($_FILES ['photo'] ['tmp_name']))  {
    move_uploaded_file ($_FILES ['photo'] ['tmp_name'],
    $_FILES ['photo'] ['name'] ) ;
    print ("<img src='".$_FILES ['photo'] ['name']."' />") ;
    }
     
    else {
    Die ("Problème d'envoi du fichier.")
    }
     
    ?>
    De cette façon l'url de l'image sera genéré automatiquement et sera placer dans le fichier ou tes fichier de requête sont placé.
    Si tu veu specifier un dossier specifique qui an une autre place voici commen proceder mais fait gafe car les Images seront en double c'est a dire 1 pour le siteA et une autre pour le siteB.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "images/"$_FILES ['photo'] ['name']
    En gros J'ai du copier collé d'un livre php que j'ai à la maison je c pas si j'ai bien écrit le script mes sa vaux le coup d'aissayer.
    Merci pour ta réponse.

    Par contre je ne suis pas sûr de tout comprendre dans ton raisonnement malgré ton code... Peux-tu être m'éclairer?

    Merci.

Discussions similaires

  1. Problème d'intégration avec IE
    Par Bolderizderizderiz dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 19/09/2008, 12h43
  2. Problème d'intégration avec borne infinie
    Par cozo22 dans le forum MATLAB
    Réponses: 1
    Dernier message: 02/04/2008, 15h27
  3. Problème de submit() avec tag html:file
    Par _sybe_ dans le forum Struts 1
    Réponses: 8
    Dernier message: 31/05/2007, 15h08
  4. Problème de compilation avec Direct Input
    Par di-giac dans le forum DirectX
    Réponses: 6
    Dernier message: 06/05/2005, 18h19
  5. Problème d'index avec load data file
    Par bruno782 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 09/03/2005, 12h11

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