Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > HTML / DHTML / XHTML
HTML / DHTML / XHTML Forum sur la programmation HTML / DHTML/ XHTML et la validation W3C. Cours (X)HTML, FAQ (X)HTML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/01/2011, 12h23   #1
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
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!
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 12h45   #2
Membre du Club
 
Inscription : novembre 2005
Messages : 179
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : novembre 2005
Messages : 179
Points : 60
Points : 60
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.
brisso est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 13h38   #3
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
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...
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 13h59   #4
Membre du Club
 
Inscription : novembre 2005
Messages : 179
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : novembre 2005
Messages : 179
Points : 60
Points : 60
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.
brisso est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 14h44   #5
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
Je ne vois pas trop ce que tu veux dire...
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 14h56   #6
Membre du Club
 
Inscription : novembre 2005
Messages : 179
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : novembre 2005
Messages : 179
Points : 60
Points : 60
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 :
<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 :
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.
brisso est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/01/2011, 15h01   #7
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
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?
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 15h06   #8
Membre du Club
 
Inscription : novembre 2005
Messages : 179
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : novembre 2005
Messages : 179
Points : 60
Points : 60
Oui dans l'idée c'est exactement ça. Mais comme je te l'ais dit je ne sais pas le faire.
brisso est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 15h08   #9
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
Pas de souci, je sais très bien effectuer ce genre de requête! Merci pour l'idée!
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 15h10   #10
Membre du Club
 
Inscription : novembre 2005
Messages : 179
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : novembre 2005
Messages : 179
Points : 60
Points : 60
Bon courage dans ce cas !
brisso est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 15h18   #11
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
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
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2011, 17h38   #12
Nouveau Membre du Club
 
Inscription : novembre 2010
Messages : 30
Détails du profil
Informations personnelles :
Localisation : Canada

Informations forums :
Inscription : novembre 2010
Messages : 30
Points : 30
Points : 30
Dans ton from de régistration Utilise la ligne suivante pour les Images.
Code :
<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 :
<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 :
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 :
"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.
ShaunY est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2011, 10h03   #13
Membre éprouvé
 
Avatar de Sayrus
 
Inscription : décembre 2005
Messages : 818
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2005
Messages : 818
Points : 456
Points : 456
Citation:
Envoyé par ShaunY Voir le message
Dans ton from de régistration Utilise la ligne suivante pour les Images.
Code :
<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 :
<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 :
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 :
"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.
__________________
Solutions pour concessions et garages automobiles =>
http://www.fastback.be
Sayrus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h02.


 
 
 
 
Partenaires

Hébergement Web