bonjour a tous

j ai crée un formulaire
avec un choix du mode d envois de ce style

$mode_envoi = "La Poste belge"; //vaut la poste sauf ...
if($_POST['envoi'] == 1) $mode_envoi = "Kiala" ;//si kiala a ete choisi(poste.envoi=0)
elseif($_POST['envoi'] == 2) $mode_envoi = "la poste francaise" ;//si poste fr a ete choisi(poste.envoi=2)
elseif($_POST['envoi'] == 3) $mode_envoi = "Mondial relay" ;//si poste fr a ete choisi(poste.envoi=2)



lorsque le client choisit kiala , il faudrait que je puisse l obliger a remplir suivant , si il ne les remplit pas et ce uniquement après avoir choisit kiala qu il y a un pop up avec un message d erreur


if($_POST["envoi"]==3){
'.$_POST["non_du_point_mondial_relay"].' 
'.$_POST["adresse_point_kiala"].' 
.$_POST["adresse_point_mondial_relay"].'
'.$_POST["Localite_du_point_mondial_relay"].' 
.$_POST["code_postal_du_point_mondial_relay"].' 




un tout grand merci pour l aide toujours donnee

voici le lien de mon formulaire
http://les-perles.comze.com/les-perles/essai6perlecommande270613NV1.php


que pensez vous de ce code

if(oForm.envoi[1].checked) // si "kiala" est cochée
    {
    function Verifie(aBC)
   {
   if(aBC.non_du_point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 votre point kila .');
        return false;
   }else if(aBC.Localite_du_point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 la localite du point kiala.'); 
        return false;
   }else if(aBC.code_postal_du_point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 le code postal du point kiala.'); 
        return false;
   }else if(aBC.adresse_point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 l adresse de votre point kiala.'); 	
        return false;
   }else if(aBC.point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 votre point kiala .'); 	
        return false;
   }
	 {
		return true;
	 }
	
    }	
			else if(oForm.envoi[3].checked)
    { // si "france mondial" est coché
        {
    function Verifie(aBC)
   {
   if(aBC.non_du_point_mondial_relay.value == ""){
        alert('Vous n\'avez pas renseign\351 votre point mondial relay .');
        return false;
   }else if(aBC.Localite_du_point_mondial_relay.value == ""){
        alert('Vous n\'avez pas renseign\351 la localite du point mondial relay.'); 
        return false;
   }else if(aBC.code_postal_du_point_mondial_relay.value == ""){
        alert('Vous n\'avez pas renseign\351 le code postal du point mondial relay.'); 
        return false;
   }else if(aBC.adresse_point_mondial_relay.value == ""){
        alert('Vous n\'avez pas renseign\351 l adresse de votre point mondial relay.'); 	
        return false;
   }
	 {
		return true;
	 }
	
    }	
a écrit :
lorsque le client choisit kiala , il faudrait que je puisse l obliger a remplir suivant , si il ne les remplit pas et ce uniquement après avoir choisit kiala qu il y a un pop up avec un message d erreur


Le problème de ta solution c'est qu'elle est pas complète. Si l'utilisateur désactive le JS, ta solution sert à rien.
__________________________________
Concernant ta solution je la trouve pas très clair, d'ailleurs je sais même pas si ça va marcher j'ai jamais coder comme ça: if(condition){fonction(){code}}

Enfin déjà c'est sur que si le if n'est pas dans une fonction, il fonctionnera pas.

Et après j'ai l'impression que le code est en double. Si a chaque tu dois chercher si le code postal est ok, si l'adresse est ok c'est même code tu dois juste faire un variable "typeTransport" et ça devrait être bon.


PS: y a pas vraiment de question dans ton post, si ça tombe c'est pas du tout la réponse que tu souhaitais. Smiley rolleyes
Salut

pas faux...

un if comprenant une déclaration de fonction je suis pas fan et pas sur que sa marche a 100%.

Dans la logic des choses, tu déclare ta fonction, et tu fais un IF qui APPEL ta fonction, c'est pas dans un IF qu'il faut déclarer la fonction.

Après j'ai maté ton site.... dur dur... pourquoi ne pas avoir opté pour une base de données ??? toutes les informations en dur comme ça je trouve cela bizarre.
bonjour a tous
merci pour les réponses
Disons que j essaye de me débrouiller avec le peu de connaissance que j ai ...
donc pas toujours évident de s y retrouver a travers tous ces langages et puis avec l age mdrrr
Il m a déjà fallu des mois de recherches pour en arriver a un tel résultat .

Pour le javascript ne pourrais t on pas faire un message d erreur si ce dernier est désactiver

Autrement pourriez vous me donnez un exemple avec une base de donnée que je puisse m en inspirer et tente de me débrouiller

Pour ce qui est de ma question la voici
Pour l instant si un client choisi la france pour pays, d office il a le choix pour que son colis soit envoyé par mondial relay ou par la poste .
Si il choisi la poste c est nickel puisque j ai les informations dans ses coordonnées .
Mais si il choisit mondial relay et qu il ne remplit pas les champs , ben j ai pas les infos pour l envoi .
Donc comment faire pour l obliger a remplir ces champs , si il choisi mondial relay .
Idem pour la belgique .

Un tout grand merci pour l aide
Pas sur que ça ait un grand intérêt d'upper tout les jours. Smiley cligne

Bien sur que si tu peux afficher un message pour le JavaScript maintenant tu risque de perdre des clients. A toi de voir, google mettre ça en place c'est pas bien compliqué.

Avec une BDD, je suppose que l'idée est de stocker tous les points de retrait et de proposer des points de retrait cohérent par rapport à un code postal. Maintenant au vu des questions, on peut supposer de ton niveau, du coup ça me semble un petit peu complexe à mettre en place.

a écrit :

Mais si il choisit mondial relay et qu il ne remplit pas les champs , ben j ai pas les infos pour l envoi .


Vite fais: Le formulaire en method POST. Tu check chaque zone $_POST["add_point_retrait"], etc.
Tu fais un
if(condition: tout est remplit){
redirection vers la page suivante
else{
reste sur la même page avec un message d'erreur
}
Merci pour la réponse
Ben tant pis je vais laisser tomber alors momentanément
je voyais cela bien plus si simple
du style
si le client choisit kiala
vérifie que les champs de ce mode de livraison soit bien cocher

Car au niveau des coordonnées des client cela se fait bien avec des alert
Re,

oui j'avoue si tu trouve pas cela simple ne tente pas la base de données. (après rien ne t'empeche de regarder les tuto d'utilisation de BDD avec PHP )


Pour te repondre sur mondial relay, le truc c'est que lorsque l'utilisateur clique sur le bouton de validation il faut que derrière, l'événement appel une méthode (php/javascript comme tu veux) qui va tester si les champs désirées sont == null (ou "") si les tous les champs sont pleins alors tu peux continuer l'action. Mais bon, faut ce penché tout d'abord sur l'algo et non le langage car un truc comme ça tu le fait en n'importe quel langage.

du style


<button onclick="myFonctionTestChampVide();">

function myFonctionTestChampVide
{
   if (recupération du champ en JS == null)
   else if (recupération du deuxieme champ en JS == null)
   else if (recupe du troisième champs en js == null ) 
   etc...
   etc...
}


la y'a qu'une partie, et brouillon en plus, mais ça te peux te donner une idée sur ce que tu peux faire / faire évoluer.
Bonsoir a tous
n ayant pas très bien compris le message précédent mais dont je remercie le posteur

j ai essayer ce morceau de code mais cela ne fonctionne pas non plus il passe que le champ soit rempli ou pas
<TABLE bgcolor=#9FB9B5 width="690"BORDER>
	<TR width="690">

	</TR>
		
	<TR width="690"height="6">
			<script type="text/javascript">
		
	if($_POST['envoi'] == 1) 
    { 		 function Verifie(aBC)
   {
   if(aBC.non_du_point_kiala.value == ""){
        alert('Vous n\'avez pas renseign\351 votre kiala.');
        return false;
   }
     }
    }	
		
		
	 </script> 
	
	
		<TD width="345"><font color="noir">Nom du point kiala (ex librairie ...)</font>
		</TD> 
		<TD width="345"> 
		<input size="45" name="non_du_point_kiala">
		</TD> 
	</TR>
	<TR>