5546 sujets

Sémantique web et HTML

Bonsoir,
Encore un souci que je n'arrive pas à résoudre et que je souhaite vous soumettre.

Sur un site, j'ai fait un petit formulaire HTML mais sans traitement PHP, juste pour renseigner les visiteurs sur un trajet (date, heure, distance, prix...). Le résultat s'affiche classiquement dans une page html.

Mais ensuite, je souhaiterais que si les visiteurs acceptent, ils puissent passer commande.
Donc cliquer sur un bouton "réserver" et que les renseignements du 1er formulaire s'affichent automatiquement dans les champs "input" du second.
Re-donc, comment faire passer les données d'un formulaire à l'autre ?

Quelqu'un pourrait-il m'aider ?
Merci par avance et bonne soirée,
Evelyne31
Salut,

Je ne comprends pas trop le "sans traitement PHP"...
Tu as un formulaire mais comment fais-tu pour afficher le résultat ?
Comment accèdes-tu à tes données ?

L'idée pour faire passer des données d'un formulaire à un autre est assez simple mais il faudra forcément qu'il y ait un traitement côté serveur (PHP, Python, Ruby, .NET, Node.js...).
Bonsoir Mathieu,
Merci pour ta réponse. Voici le début du code de mon formulaire :
[code=html<form action="" method="post" name="direction" id="direction">[/code]
Pour "action=", il n'y a rien car le résultat s'affiche de suite par des fonctions js.
Il s'agit d'un formulaire de demande de renseignement de tarif.

Je souhaiterais qu'ensuite, si les renseignements sont OK pour le visiteur, il puisse effectuer une réservation sans resaisir les infos.

Ci-dessous le formulaire de demande de renseignements complet.

<div id="formulaire">	
	
<form action="" method="post" name="direction" id="direction">
<!--<form method="post" action="traitement.php"> -->
		
	<p><label>Point de départ :</label><br />
		<input type="text" name="origin" id="origin" value="" size="50px"></p>
		
	<p><label>Destination :</label><br />
		<input type="text" name="destination" id="destination" value="" size="50px"></p>
		
	<p><input type="radio" value="1" name="horaire" id="radio1" checked="checked" /><label for="radio1"> de 6h à 19h</label></p>
		
	<p><input type="radio" value="2" name="horaire" id="radio2" /><label for="radio2"> de 19h à 6h, les week-ends, les jours fériés</label></p>

	<p><input type="button" value="Calculer l'itinéraire" onclick="javascript:calculate()"></p>
</form>

<p>Temps : <span id="tps"></span><span id="tps2" style="display:none"></span></p>
	<p>Distance : <span id="dst"></span><span id="dst2" style="display:none"></span><span id="dst3" style="display:none"></span></p>
	<p>Estimation du tarif : <span id="tarif"></span></p>
<p><input type="button" value="Voir l'estimation" onclick="javascript:tarification()"></p>
</div>
Evelyne31 a écrit :
Mais ensuite, je souhaiterais que si les visiteurs acceptent, ils puissent passer commande.
Donc cliquer sur un bouton "réserver" et que les renseignements du 1er formulaire s'affichent automatiquement dans les champs "input" du second.
Re-donc, comment faire passer les données d'un formulaire à l'autre ?

J'avoue que ta formulation "mais sans traitement PHP" est pour le moins ambigue.
Comme le souligne Matthieu, il n'y a pas trente six façons de traiter un formulaire :
- soit tu as un bouton Submit ET un attribut @action renseigné avec l'url d'une autre page HTML (ou de la même page) qui, à réception, traitera de façon dynamique (PHP, Java, etc...) les données reçues et renverra le second formulaire en initialisant les champs de saisie avec les données issues du premier formulaire
- soit tu restes sur la même page HTML, et tu associes alors au bouton de validation un script qui reconstruit le formulaire, en réutilisant les données précédemment saisies
Toutefois, à un moment donné il faudra bien que tu en fasses quelque chose de ces informations et je vois mal comment tu vas t'y prendre sans la mise en oeuvre d'un langage côté serveur.
Si ton site est statique (c'est à dire sans langage côté serveur), les formulaire ne servent qu'à afficher des informations, pas à mettre en place un dialogue transactionnel entre utilisateur et serveur (là on parle de site dynamique et, donc, de l'utilisation d'un langage pour traiter les données).
Ou alors on n'a pas tout compris...
Donc, pour résumer :
a) tu envoies vers le navigateur un premier FORM avec un attribut @action contenant l'url de la page HTML à appeler lorsque l'utilisateur clique sur le bouton "valider" (submit)
b) à réception côté serveur, tu récupère les données du formulaires via PHP, Java ou autre
c) tu renvoies vers le navigateur un nouveau FORM contenant les données initialisées
Sur la façon de récupérer les données en PHP, lire ce tutoriel.
Bonjour,
Merci sepecat pour ta réponse très détaillée.
Désolée pour ma formulation ambigue.
Je me re-plonge donc dans le php et reviendrai ici pour un "Résolu" j'espère.
Très bonne journée,
Evelyne31
Bonsoir,
J'ai enfin réussi à récupérer et afficher les données du 1er formulaire dans un second avec
<?php echo $_POST['xxx']; ?>
Un grand merci à sepecat, notamment pour le lien, et à Mathieu.

Toutefois, il me reste un problème : je n'arrive pas à comprendre le code d'une partie des données que je dois récupérer. Il s'agit d'un traitement par script js. La syntaxe est la suivante :
<span id="tps"></span>
pour obtenir une durée.
Là, je cale. Bien sûr, un
<?php echo $_POST['tps']; ?>
ne donne rien.

Auriez-vous SVP un conseil ? Merci par avance,
Evelyne31
Ta balise SPAN ne peut rien fournir comme information puisqu'elle n'est pas un champ de saisie comme le sont INPUT ou TEXTAREA.
De plus, elle est vide et ne sert donc à rien. L'attribut ID qui lui est associé ne sert lui non plus à rien.
Faute de plus d'information sur ton code, la seule chose qu'on peut dire c'est que tu peux supprimer cette balise.
Si tu cherches à récupérer d'autres infos, il faut donc voir du côté des autres champs de saisie de ton formulaire.
Salut,
Je ne serais pas si catégorique que sepecat quant à l'utilité de ta balise #tps.
En effet ton script JS peut mettre à jour un moment donné le contenu de ta balise et ce contenu peut être récupéré et envoyé par une requête en AJAX
Il serait donc plus simple et clair que tu postes ici ou via un Codepen le fonctionnement de cette partie de ton code...
Si tu utilises pas mal de JS, je pense qu'il peut être intéressant de rester dans cet écosystème et utiliser AJAX.
Bonjour MatthieuR et sepecat,
Je vous remercie pour votre réponse et vous précise que je ne connais pas le js.
Je vous explique un peu plus : il s'agit de faire une estimation de prix pour un trajet donné. En fonction du nombre de km trouvé une fonction js "tarification" calcule le prix. Je vous joins le code de cette fonction ci-dessous en précisant que les prix sont fictifs pour le moment.
Le résultat passe dans la variable : $("#tarif")
Ensuite distance et prix s'affichent ici :
<p>Distance : <span id="dst"></span><span id="dst2" style="display:none"></span><span id="dst3" style="display:none"></span></p>
	<p>Estimation du tarif : <span id="tarif"></span></p>
<p><input type="button" value="Voir l'estimation" onclick="javascript:tarification()"></p>

Cette partie du code fonctionne très bien.

Là où ça bloque, c'est que j'ai mis un bouton "Réserver" si le prix convient et là on passe à une autre page en php. Je récupère bien tous les renseignements avec
<?php echo $_POST['origin']; ?>
mais impossible de récupérer le tarif.

Merci pour votre aide et bonne journée,
Evelyne31

<script type="text/javascript">
function tarification()
	{
		var horaire = $("input[type='radio']:checked").val();
		var tps = $("#tps2").text();
		var dist = $("#dst2").text();
                var dist2 = $("#dst3").text();
		var nbrkm = (dist/1000);
                var nbrkm2 = (dist2/1000);
		tps = tps/60;
		prixcourse = 0;

                if(horaire == 1)
                {
					if(nbrkm > 0 && nbrkm < 10)
						prixcourse = 35;
					else if(nbrkm >= 10 && nbrkm < 20)
						prixcourse = 50;
					else if(nbrkm >= 20 && nbrkm < 30)
						prixcourse = 65;
					else if(nbrkm >= 30 && nbrkm < 40)
						prixcourse = 80;
					else if(nbrkm >= 40 && nbrkm < 50)
						prixcourse = 100;
					else if(nbrkm >= 50 && nbrkm < 60)
						prixcourse = 120;
					else if(nbrkm >= 60 && nbrkm < 70)
						prixcourse = 140;
					else if(nbrkm >= 70 && nbrkm < 80)
						prixcourse = 160;
					else if(nbrkm >= 80 && nbrkm < 90)
						prixcourse = 180;
					else if(nbrkm >= 90 && nbrkm < 100)
						prixcourse = 200;
					else if(nbrkm >= 100)
						prixcourse = nbrkm * 2.2;
				}
				else if(horaire == 2)
				{
					if(nbrkm > 0 && nbrkm < 10)
						prixcourse = 40;
					else if(nbrkm >= 10 && nbrkm < 20)
						prixcourse = 57.50;
					else if(nbrkm >= 20 && nbrkm < 30)
						prixcourse = 74.75;
					else if(nbrkm >= 30 && nbrkm < 40)
						prixcourse = 92;
					else if(nbrkm >= 40 && nbrkm < 50)
						prixcourse = 115;
					else if(nbrkm >= 50 && nbrkm < 60)
						prixcourse = 138;
					else if(nbrkm >= 60 && nbrkm < 70)
						prixcourse = 161;
					else if(nbrkm >= 70 && nbrkm < 80)
						prixcourse = 184;
					else if(nbrkm >= 80 && nbrkm < 90)
						prixcourse = 207;
					else if(nbrkm >= 90 && nbrkm < 100)
						prixcourse = 230;
					else if(nbrkm >= 100)
						prixcourse = nbrkm * 2.2;
				}

                if(nbrkm2 >=20)
                     prixcourse += 10;

		$("#tarif").text(Math.round(prixcourse)+" euros");
	}  
</script>
MatthieuR a écrit :
Salut,
Je ne serais pas si catégorique que sepecat quant à l'utilité de ta balise #tps.
En effet ton script JS peut mettre à jour un moment donné le contenu de ta balise et ce contenu peut être récupéré et envoyé par une requête en AJAX
Il serait donc plus simple et clair que tu postes ici ou via un Codepen le fonctionnement de cette partie de ton code...
Si tu utilises pas mal de JS, je pense qu'il peut être intéressant de rester dans cet écosystème et utiliser AJAX.

Tout à fait exact et au vu du dernier code fourni, j'ai l'impression que pas mal de choses sont gérées de façon dynamique et renseignées a posteriori.
Je m'absente pour une quinzaine de jours de congés et durant ce laps de temps je ne touche pas à l'ordinateur Smiley smile .
Bye bye Paris, bonjour les Landes et les Pyrénées Smiley ravi .
Je resterai bien entendu sur le forum, mais c'est plutôt difficile de faire des tests via le smartphone aussi seras-tu plus à même que moi d'apporter ton aide à Evelyne, me semble-t-il, surtout lorsqu'il s'agira de concocter des exemples de code dont tu as le secret.
Bon week-end.
Modifié par sepecat (30 Apr 2016 - 10:30)
Il faudrait le contenu de ta fonction calculate(). Ca doit être une fonction qui fait appel à une API genre l'APIv3 de Google Maps avec la class Directions.
C'est surtout pour savoir comment sont mis à jour l'ensemble des <span> #tps et #dst.
A partir de là plusieurs choix seront possibles :
- soit mettre à jour en même temps des <input type="hidden"> contenant les infos de temps et distance
- soit utiliser l'existant et faire passer les infos au serveur (PHP) via AJAX
J'attends donc ton retour sur le contenu de la fonction calculate() en JS.
Bonjour MatthieuR,
C'est tout à fait ça, j'ai une fonction qui fait appel à l'API V3 Google Maps pour calculer le trajet et l'afficher sur une carte.
Ensuite, je te transmets le code de la fonction calculate () ci-dessous.
Ne connaiss
suite du message parti précédent parti trop vite !

Ne connaissant rien au js ne ne comprends pas pourquoi une information, qui s'affiche sur une page, et résultant d'une fonction, transmise dans une variable, est aussi complexe à faire passer dans une autre page ? C'est tellement simple en php ?

Voici le code de la fonction calculate ():
<script type="text/javascript">
function getDistance(ori, dest)
  {
	origins = [ori];
	destinations = [dest];

	var query = {
    origins: origins,
    destinations: destinations,
    travelMode: google.maps.TravelMode.DRIVING,
    unitSystem: google.maps.UnitSystem.METRIC
  };
	
	 dms.getDistanceMatrix(query, function(response, status) {
        if (status == "OK") {
			res = response.rows[0].elements[0].distance.text;
			res2 = response.rows[0].elements[0].distance.value;
			$("#dst").text(res);
			$("#dst2").text(res2);
        }
      }
    );
	
  }
  
  function getDuree(ori, dest)
  {	
	origins = [ori];
	destinations = [dest];
  
	var query = {
    origins: origins,
    destinations: destinations,
    travelMode: google.maps.TravelMode.DRIVING,
    unitSystem: google.maps.UnitSystem.METRIC
  };
	
	 dms.getDistanceMatrix(query, function(response, status) {
        if (status == "OK") {
			res =  response.rows[0].elements[0].duration.text;
			res2 =  response.rows[0].elements[0].duration.value;
			$("#tps").text(res);
			$("#tps2").text(res2);
		}
      }
    );
  }
  
	function calculate()
	{
		getDuree (document.getElementById('origin').value, document.getElementById('destination').value);
		getDistance (document.getElementById('origin').value, document.getElementById('destination').value);
                //getDistance2("215 Avenue Gabriel Péri, Sainte-Geneviève-des-Bois", document.getElementById('origin').value);

		showRoute();
		$("#tarif").text("");	
	}
</script>


Merci beaucoup pour ton aide sur ce problème ardu.
Evelyne31
Ton problème n'est pas si ardu mais tout est coder en JS donc aucune transmission en JS possible entre les pages (enfin si avec localstorage, les cookies ou via l'url mais c'est pas adapté ici) et surtout aucune transmission possible en JS directement au serveur (et heureusement...).
Donc la solution la plus simple je pense serait d'avoir des champs en type=hidden car tu as l'air plus à l'aise avec PHP que avec JS.
Donc voici comment tu peux faire (j'utilise pour le coup l'objet Directions au lieu de ton utilisation de istanceMatrix) :

ton HTML :
il faut d'abord charger tes librairies Google juste avant ton fichier contenant les fonctions JS :
<script type="text/javascript" src="http://maps.google.com/maps/api/js?language=fr&libraries=places"></script>

puis :
<form method="post" action="traitement.php">
        
      <p><label>Point de départ :</label><br />
        <input type="text" name="origin" id="origin" size="50px" class="google-autocomplete" placeholder="Départ"></p>
        
      <p><label>Destination :</label><br />
        <input type="text" name="destination" id="destination" size="50px" class="google-autocomplete" placeholder="Arrivée"></p>
        
      <p><input type="radio" value="1" name="horaire" id="radio1" checked="checked" /><label for="radio1"> de 6h à 19h</label></p>
        
      <p><input type="radio" value="2" name="horaire" id="radio2" /><label for="radio2"> de 19h à 6h, les week-ends, les jours fériés</label></p>

      <p><input type="button" value="Calculer l'itinéraire" onclick="javascript:calculate()"></p>
    

      <p>Temps : <span id="tps"></span>
        <input type="hidden" name="tps" id="tps2" />
      </p>
      <p>Distance : <span id="dst"></span>
        <input type="hidden" name="dst" id="dst2" />
        <span id="dst3" style="display:none"></span>
      </p>
        <p>Estimation du tarif : <span id="tarif"></span></p>
        <input type="hidden" name="tarif" id="tarif_hidden" />
      <p><input type="button" value="Voir l'estimation" onclick="javascript:tarification()"></p>
      <p><input type="submit" value="Réserver"></p>
    </form>


puis tes fonctions JS
$(function(){
  
  initAutocomplete();
  
});
/**
 * il faudrait déplacer une partie de cette fonction côté serveur
 */
function tarification(){
  var horaire = $("input[type='radio']:checked").val();
  var tps = $("#tps2").val();
  var dist = $("#dst2").val();
  var dist2 = $("#dst3").text();
  var nbrkm = (dist/1000);
  var nbrkm2 = (dist2/1000);
  tps = tps/60;
  prixcourse = 0;

  if(horaire == 1){
    if(nbrkm > 0 && nbrkm < 10)
      prixcourse = 35;
    else if(nbrkm >= 10 && nbrkm < 20)
      prixcourse = 50;
    else if(nbrkm >= 20 && nbrkm < 30)
      prixcourse = 65;
    else if(nbrkm >= 30 && nbrkm < 40)
      prixcourse = 80;
    else if(nbrkm >= 40 && nbrkm < 50)
      prixcourse = 100;
    else if(nbrkm >= 50 && nbrkm < 60)
      prixcourse = 120;
    else if(nbrkm >= 60 && nbrkm < 70)
      prixcourse = 140;
    else if(nbrkm >= 70 && nbrkm < 80)
      prixcourse = 160;
    else if(nbrkm >= 80 && nbrkm < 90)
      prixcourse = 180;
    else if(nbrkm >= 90 && nbrkm < 100)
      prixcourse = 200;
    else if(nbrkm >= 100)
      prixcourse = nbrkm * 2.2;
  }
  else if(horaire == 2){
    if(nbrkm > 0 && nbrkm < 10)
      prixcourse = 40;
    else if(nbrkm >= 10 && nbrkm < 20)
      prixcourse = 57.50;
    else if(nbrkm >= 20 && nbrkm < 30)
      prixcourse = 74.75;
    else if(nbrkm >= 30 && nbrkm < 40)
      prixcourse = 92;
    else if(nbrkm >= 40 && nbrkm < 50)
      prixcourse = 115;
    else if(nbrkm >= 50 && nbrkm < 60)
      prixcourse = 138;
    else if(nbrkm >= 60 && nbrkm < 70)
      prixcourse = 161;
    else if(nbrkm >= 70 && nbrkm < 80)
      prixcourse = 184;
    else if(nbrkm >= 80 && nbrkm < 90)
      prixcourse = 207;
    else if(nbrkm >= 90 && nbrkm < 100)
      prixcourse = 230;
    else if(nbrkm >= 100)
      prixcourse = nbrkm * 2.2;
  }

  if(nbrkm2 >=20) prixcourse += 10;

  $("#tarif").text(Math.round(prixcourse)+" euros");
  $("#tarif_hidden").val(Math.round(prixcourse));
}
/**
 * calcule l'itinéraire avec le DirectionsService de Google
 */
function calculate(){
  var origin      = $('#origin').val();
  var destination = $('#destination').val();
  if(origin && destination){
    var request = {
      origin      : origin,
      destination : destination,
      travelMode  : google.maps.DirectionsTravelMode.DRIVING
    }
    var directionsService = new google.maps.DirectionsService();
    directionsService.route(request, function(response, status){
      if(status == google.maps.DirectionsStatus.OK){
        setInfos(response);
      }
    });
  }
}
/**
 * met à jour les infos du formulaire depuis la réponse du calcul d'itinéraire de Gogle
 * @param DirectionsResult response réponse de Google
 */
function setInfos(response){

  var route_infos = response.routes[0].legs[0],
      total_distance = route_infos.distance,
      total_duration = route_infos.duration,
      origin = route_infos.start_address,
      destination = route_infos.end_address;
  $('#dst').text(total_distance.text);
  $('#dst2').val(total_distance.value);
  $('#tps').text(total_duration.text);
  $('#tps2').val(total_duration.value);
  $("#tarif").text(''); 
  $("#tarif_hidden").val('');

  $('#origin').val(origin);
  $('#destination').val(destination);

}
/**
 * initialisation de l'autocomplete des champs de recherche d'adresses de Google Places
 */
function initAutocomplete() {
  $.each($('.google-autocomplete'), function(index,elem){
    new google.maps.places.Autocomplete(
      this,
      {types: ['geocode']});
  });
}

Je t'ai mis en ligne une petite démo : http://alsacreations.matthieurebillard.fr/029
Tu peux tester, tu as bien toutes tes données...
Ceci dit, je trouve pas ça terrible d'avoir la grille des tarifs en JS, ça serait préférable d'avoir ça côté serveur (soit un tableau en PHP, soit en base de données) et récupérer ces infos via AJAX.

Ca pourrait être vraiment amélioré mais je pense que c'est un bon début...
Bonsoir MatthieuR,
Je viens de tester ton code en remplacement du mien et vraiment je te remercie car tout fonctionne comme je le souhaitais, à merveille. De plus tu as intégré un autocomplete pour les adresses, très bienvenu et que je me réservais pour plus tard.
Je vais étudier de près ton code, notamment les champs de type hidden.
Tout à fait d'accord que j'aurais du faire ces calculs de prix/distances en php mais, par facilité, j'ai récupéré ce code en js. Cela m'a créé bien des problèmes au final, ne m'a pas fait gagner de temps et heureusement que j'ai pu compter sur l'aide de ce forum.
Pour Ajax, je suis encore plus incompétente qu'en js !
Bref, je peux mettre ce post en résolu et je t'en remercie 1000 fois en espérant qu'il pourra servir à d'autres.
Très bonne soirée et bon week-end,
Evelyne
Allez juste pour l'idée et pour te montrer que l'AJAX c'est pas compliqué, voici comment tu peux faire de manière simple :
ta fonction tarification() devient ça :
function tarification(){
  var horaire = $("input[type='radio']:checked").val();
  var tps = $("#tps2").val();
  var dist = $("#dst2").val();
  var dist2 = $("#dst3").text();
  var nbrkm = (dist/1000);
  var nbrkm2 = (dist2/1000);

  var data = {
    horaire: horaire,
    nbrkm: nbrkm,
    nbrkm2: nbrkm2,
  }
  $.get('tarifs.php', data, function(prixcourse){

    $("#tarif").text(Math.round(prixcourse)+" euros");
    $("#tarif_hidden").val(Math.round(prixcourse));
  });
}

et ton nouveau fichier tarifs.php est comme ça :
<?php

$horaire = (int) htmlspecialchars($_GET['horaire']);
$nbrkm = (int) htmlspecialchars($_GET['nbrkm']);

if($horaire == 1){
    if($nbrkm > 0 && $nbrkm < 10)
      $prixcourse = 35;
    else if($nbrkm >= 10 && $nbrkm < 20)
      $prixcourse = 50;
    else if($nbrkm >= 20 && $nbrkm < 30)
      $prixcourse = 65;
    else if($nbrkm >= 30 && $nbrkm < 40)
      $prixcourse = 80;
    else if($nbrkm >= 40 && $nbrkm < 50)
      $prixcourse = 100;
    else if($nbrkm >= 50 && $nbrkm < 60)
      $prixcourse = 120;
    else if($nbrkm >= 60 && $nbrkm < 70)
      $prixcourse = 140;
    else if($nbrkm >= 70 && $nbrkm < 80)
      $prixcourse = 160;
    else if($nbrkm >= 80 && $nbrkm < 90)
      $prixcourse = 180;
    else if($nbrkm >= 90 && $nbrkm < 100)
      $prixcourse = 200;
    else if($nbrkm >= 100)
      $prixcourse = $nbrkm * 2.2;
  }
  else if($horaire == 2){
    if($nbrkm > 0 && $nbrkm < 10)
      $prixcourse = 40;
    else if($nbrkm >= 10 && $nbrkm < 20)
      $prixcourse = 57.50;
    else if($nbrkm >= 20 && $nbrkm < 30)
      $prixcourse = 74.75;
    else if($nbrkm >= 30 && $nbrkm < 40)
      $prixcourse = 92;
    else if($nbrkm >= 40 && $nbrkm < 50)
      $prixcourse = 115;
    else if($nbrkm >= 50 && $nbrkm < 60)
      $prixcourse = 138;
    else if($nbrkm >= 60 && $nbrkm < 70)
      $prixcourse = 161;
    else if($nbrkm >= 70 && $nbrkm < 80)
      $prixcourse = 184;
    else if($nbrkm >= 80 && $nbrkm < 90)
      $prixcourse = 207;
    else if($nbrkm >= 90 && $nbrkm < 100)
      $prixcourse = 230;
    else if($nbrkm >= 100)
      $prixcourse = $nbrkm * 2.2;
  } 
echo $prixcourse;

Là, je vais au plus simple... on pourrait renvoyer du JSON si on avait d'autres infos.

EDIT: j'ai d'ailleurs mis à jour la démo en ligne : http://alsacreations.matthieurebillard.fr/029/
Modifié par MatthieuR (30 Apr 2016 - 23:57)
Merci encore MatthieuR, je vais regarder ton lien avec la plus grande attention.
Pour moi, html, css, sql, php c'est déjà complexe.
Je comprends bien qu'avec js, jquery et ajax on peut aller beaucoup plus loin et beaucoup mieux. Je manque de temps mais je vais essayer.
Encore merci pour m'avoir permis de surmonter ce blocage de transmission des données d'un formulaire à un autre, de js en php. Cela va me servir souvent et à d'autre personnes je suis sûre.
Bonne continuation sur ce forum plus qu'utile.
Evelyne31
MatthieuR,
Je n'avais pas vu ton dernier post avant ma réponse.
Après avoir bien regardé : super !
Tout cela va beaucoup me servir.
Encore très sincèrement merci et bon week-end,
Evelyne31