Précédent   Forum Mac > Création sur Mac - iLife et Pro > Développement web

Développement web Pour les webmasters qui utilisent PHP, MySQL, AJAX, CSS, JavaScript, etc.

Réponse
 
Outils de la discussion Modes d'affichage
Vieux 10/02/2007, 19h44
Line: submit form + lien vers autre page...
  #1
Membre émérite
 
Avatar de @ybee
 
Date d'inscription: 18/05/01
Localisation: Embourg, Belgique
Messages: 994
Expérience: 46
Activité: 0%
Disco: @ybee attend tout seul sur la banquette
Hello à tous,

Sorry pour le titre peu clair, je savais pas comment le formuler ;-)

J'ai une page avec un formulaire. De façon très classique, il y a bien entendu un bouton "Submit" en bas du formulaire.

MAIS

L'utilisateur peut cliquer sur un lien et consulter d'autre informations le concernant. J'aimerais que lorsqu'il choisit de cliquer sur ce lien, cela valide le formulaire pour enregistrer ses infos, et que cela le renvoie vers cette autre page. Ceci permet qu'il ne perde pas les informations qu'il a entré, si il est tenté de cliquer sur le lien pour voir d'autres infos...

Je sais pas si je suis clair, mais d'ores et déjà merci pour votre aide
--------------------
[ antoine . olbrechts . eu ] :: Antoine Olbrechts ¬ mon Blog
Adium.aybee.net :: Site de support pour AdiumX en français...
@ybee est déconnecté   Réponse avec citation
Vieux 10/02/2007, 21h01   #2
Accro à MacG
 
Avatar de p4bl0
 
Date d'inscription: 12/07/04
Localisation: $PWD
Messages: 4598
Expérience: 60
Activité: 0%
Disco: p4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGeneration
Citation:
Envoyé par @ybee Voir le message
Hello à tous,

Sorry pour le titre peu clair, je savais pas comment le formuler ;-)

J'ai une page avec un formulaire. De façon très classique, il y a bien entendu un bouton "Submit" en bas du formulaire.

MAIS

L'utilisateur peut cliquer sur un lien et consulter d'autre informations le concernant. J'aimerais que lorsqu'il choisit de cliquer sur ce lien, cela valide le formulaire pour enregistrer ses infos, et que cela le renvoie vers cette autre page. Ceci permet qu'il ne perde pas les informations qu'il a entré, si il est tenté de cliquer sur le lien pour voir d'autres infos...

Je sais pas si je suis clair, mais d'ores et déjà merci pour votre aide
tu peux pas faire en sorte que le lien s'ouvre dans une popup ou une nouvelle fenêtre ??

si tu veux respecter les standards XHTML, il n'y a plus d'attibut target dans a, donc faut le faire en javascript :

Code:
<a href="info.html" onclick="window.open(this.href); return false">Info complémentaires</a> (s'ouvre dans une nouvelle fenêtre)*
* tu peux remplacer le texte par une petite image comme sur wikipedia (voir section "liens externes") par exemple, avec css et :after appliqué sur une classe spécifique aux liens dans une nouvelle fenêtre.

[Hors sujet mais important] pour les gens qui veulent utiliser cette méthode pour ouvrir les liens dans une nouvelle fenêtre tout en respectant les standards, N'EN ABUSEZ PAS !! il ne faut utiliser cette méthode que dans des cas où il y en a vraiment besoin (comme ici), le fait que l'attribut traget ai disparu c'ets pour de bonne raison, pas pour être remplacé par du javascript ![/Hors sujet mais important]



Si tu ne veux pas ouvrir ça dans une nouvelle fenêtre, tu peux faire comme ça :
Code:
<a href="info.html" onclick="document.getElementById('id_du_formulaire').submit();">Info complémentaires</a>
mais je me demande si ça ne va pas chargé la page qui est dans l'attibut method="" du form...

--------------------

Dernière modification par p4bl0 ; 10/02/2007 à 21h06.
p4bl0 est déconnecté   Réponse avec citation
Vieux 10/02/2007, 21h08   #3
Membre émérite
 
Avatar de @ybee
 
Date d'inscription: 18/05/01
Localisation: Embourg, Belgique
Messages: 994
Expérience: 46
Activité: 0%
Disco: @ybee attend tout seul sur la banquette
Hmmmm à tester...

Et ceci ?
Un XMLHttpRequest qui fais tourner le script d'enregistrement des données de façon invisible, et si elle se passe bien, la fonction renvoie sur la page que l'utilisateur est sensé atteindre lorsqu'il clique sur le lien?
--------------------
[ antoine . olbrechts . eu ] :: Antoine Olbrechts ¬ mon Blog
Adium.aybee.net :: Site de support pour AdiumX en français...
@ybee est déconnecté   Réponse avec citation
Vieux 10/02/2007, 21h42   #4
Rompu à MacG
 
Avatar de gloup gloup
 
Date d'inscription: 08/03/05
Localisation: La Belle Gigue
Messages: 6042
Expérience: 62
Activité: 5,1%
Disco: gloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettesgloup gloup entre au Cab en chlapettes
Si j'ai bien compris ce que tu veux faire, ça serait peut-être mieux de faire un formulaire sous forme d'assistant non? En deux ou trois étapes avec à chaque fois la possibilité de revenir en arrière pour vérifer si tout est correct et aussi un petit résumé de l'étape précédente sur l'écran en cours… Ou alors les popups accessibles comme p4bl0 t'as expliqué…

Attention : si tu utilise javascript pour faire des choses dans les formulaires n'oublies pas que'il doit être une couche supplémentaire dans la conception de ton site et que tout doit fonctionner sans car environ 15% des internautes n'ont pas javascript activé.
--------------------
Où cours-je, mes potes iront… © Le Chat – Tutoriel express xhtml + css
gloup gloup est connecté maintenant   Réponse avec citation
Vieux 11/02/2007, 08h49   #5
Accro à MacG
 
Avatar de p4bl0
 
Date d'inscription: 12/07/04
Localisation: $PWD
Messages: 4598
Expérience: 60
Activité: 0%
Disco: p4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGeneration
Citation:
Envoyé par @ybee Voir le message
Hmmmm à tester...

Et ceci ?
Un XMLHttpRequest qui fais tourner le script d'enregistrement des données de façon invisible, et si elle se passe bien, la fonction renvoie sur la page que l'utilisateur est sensé atteindre lorsqu'il clique sur le lien?
Pour ça regarde xajax, c'est super simple à mettre en place.

après tu n'aura plus qu'à faire un truc du genre
Code:
<a href="info.html" onclick="xajax_la_fonction_php_denregistrement_des_données(lesdonnéesduform);">Info complémentaires</a>
ou alors
Code:
<a href="info.html" onclick="submit_form();">Info complémentaires</a>
avec submit_form() une fonction javascript qui récupère les données du formulaire et les envoi à xajax_la_fonction_php_denregistrement_des_données( ...)

Tu va voir c'est simple à mettre en oeuvre, lis un peu la doc ou alors j'ai fais un tuto pour une utilisation particulière : une recherche live avec AJAX (via xajax).
Et il y a un tuto sur le Site du Zér0



EDIT : à gloup gloup : ne post plus !!!! tu as 1337 posts, la classe
--------------------

Dernière modification par p4bl0 ; 11/02/2007 à 08h53.
p4bl0 est déconnecté   Réponse avec citation
Vieux 11/02/2007, 13h38   #6
Membre émérite
 
Avatar de @ybee
 
Date d'inscription: 18/05/01
Localisation: Embourg, Belgique
Messages: 994
Expérience: 46
Activité: 0%
Disco: @ybee attend tout seul sur la banquette
J'arrive à quelque chose de sympa, mais j'ai encore une question... :

Le formulaire est donc validé de deux façons:

- Via le lien, j'ai mis une action dessus
- Via le bouton traditionnel d'envoi en bas de formulaire.


Ce qui serait sympa, c'est que selon la méthode de validation, la fin de mon script soit différente. Je m'explique: si l'utilisateur a cliqué sur le lien, le script enregistre toutes les données et à la fin on a un redirect vers la page1. Si il a cliqué sur le bouton Submit, le redirect se fait vers la page2

Il faudrait une variable cachée qui, selon l'endroit où a cliqué l'utilisateur, définisse la redirection vers 1 ou vers 2... Mais j'avoue que je sèche un peu là, après une nuit de codage j'ai le cerveau un peu embrumé
--------------------
[ antoine . olbrechts . eu ] :: Antoine Olbrechts ¬ mon Blog
Adium.aybee.net :: Site de support pour AdiumX en français...
@ybee est déconnecté   Réponse avec citation
Vieux 11/02/2007, 13h54   #7
Accro à MacG
 
Avatar de p4bl0
 
Date d'inscription: 12/07/04
Localisation: $PWD
Messages: 4598
Expérience: 60
Activité: 0%
Disco: p4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGenerationp4bl0 organise des soirées VIP MacGeneration
Citation:
Envoyé par @ybee Voir le message
J'arrive à quelque chose de sympa, mais j'ai encore une question... :

Le formulaire est donc validé de deux façons:

- Via le lien, j'ai mis une action dessus
- Via le bouton traditionnel d'envoi en bas de formulaire.


Ce qui serait sympa, c'est que selon la méthode de validation, la fin de mon script soit différente. Je m'explique: si l'utilisateur a cliqué sur le lien, le script enregistre toutes les données et à la fin on a un redirect vers la page1. Si il a cliqué sur le bouton Submit, le redirect se fait vers la page2

Il faudrait une variable cachée qui, selon l'endroit où a cliqué l'utilisateur, définisse la redirection vers 1 ou vers 2... Mais j'avoue que je sèche un peu là, après une nuit de codage j'ai le cerveau un peu embrumé
Code:
<form method="bidule.php" ...>
...
<input type="hidden" name="nextpage" id="nextpage" value="page2.html" />
...
</form>
...
<a href="lelienquivalide" onclick="document.getElementById('nextpage').value='page1.html'; ton_action_de_validation_du_form();">lalala</a>
Ensuite le traitement du formulaire redirige vers la page contenu dans nextpage (en php $_POST['nextpage'] par exemple).
--------------------
p4bl0 est déconnecté   Réponse avec citation
Réponse




Utilisateurs regardant la discussion actuelle : 1 (0 membre(s) et 1 invité(s))
 
Outils de la discussion
Modes d'affichage

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non


Discussions similaires
Discussion Auteur Forum Réponses Dernier message
Keynote 3.0.2 et lien vers page Web furiet Applications 0 19/01/2007 11h23
Un clic sur un lien remonte la page Firefox vers le haut AngelWithDustEyes Internet et réseau 6 14/11/2006 22h12
Lien rapide vers la liste des threads en haut de page Yip À propos de MacGeneration 3 13/06/2004 17h43
<form enctype="multipart/form data">marche pas? remi Développement web 4 16/01/2003 02h07
lien vers autre site dans nouvelle fenêtre Alexandre Développement web 5 10/10/2002 10h22


Fuseau horaire GMT +1. Il est actuellement 07h14.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2
Version française #20 par l'association vBulletin francophone