joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014
-
28 avril 2010 à 13:33
joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014
-
29 avril 2010 à 13:40
bonjour,
je travaille sur un panier et je ne veux afficher le bouton commander qu'une fois le client a cliqué sur un bouton valider permettant de recalculer le montant d'achat en fonction de la quantité demandée.j'ai essayer d'utiliser javascript mais je ne c pas pourkoi ça ne marche pas,pourtant j'ai testé le code dans une page HTML et il fonctionne.
voici le code:
<?php
function afficher()
{
var a = document.getElementById("maj").style.display="none";
var b = document.getElementById("com").style.display="";
}
function initial()
{
var c = document.getElementById("com").style.display="none";
}
</script>
</head>
joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014 28 avril 2010 à 14:35
le bouton valider permet d'actualiser la page tt en mettant à jour le total d'achat en fonction de la quantité,mon problème est qu'une fois ce bouton soit cliqué,je le cache et j'affiche un bouton commander permettant d'envoyer les données vers une page commande.j'ai utilisé return false mais ça n'a rien changé.
devil_may_cry
Messages postés194Date d'inscriptiondimanche 18 mars 2007StatutMembreDernière intervention11 juillet 2015 28 avril 2010 à 15:16
le probleme viens que si tu recharge la page javascript ne saura plus si tu a cliquer sur le bouton valider alors j'espere que la solution que je vais te proposer va te convenir
la premiere etape est de faire ton
if ($page->maj) {
maj($page);
}
avant le debut de la balise <html>
comme c'est php qui gere l'affichage ca deviens facile sert toi d'une variable qui vas dire que t'a deja fais le calcul et on doit faire un affichage du boutton commander et cacher celui de valider la variable en exemple est
$showHide donc ton if ($page->maj) maj($page);
va devenir
if ($page->maj) {
maj($page);
$showHide=true;
}
ensuite tu fait
if ($showHide) {
//c'est a dire que on doit permutter l'affichage
//comme c'est quelque ligne de code on peut les placer dans une variable
$code ="
document.getElementById('maj').style.display='none';
document.getElementById('com').style.display='block';";
} else {
$code ="
document.getElementById('maj').style.display='block';
document.getElementById('com').style.display='none';";
}
<script>
function check() {
$code;
}
...
et la tu fait $contenu
</html>
si cette soluce repond a ton besoin je peut remettre le code d'une maniere propre
devil_may_cry
Messages postés194Date d'inscriptiondimanche 18 mars 2007StatutMembreDernière intervention11 juillet 2015 29 avril 2010 à 12:20
ok c'est partie je suis ton script est tu est celui qui m'a charger pour la premiere fois dans son navigateur
ok pour le premier point :
qu'est-ce que je doit faire?
a priorie je doi t'afficher un formulaire dans lequel tu vas saisir tes données
ok pour le deuxieme point
maintenant moi je dispose de deux boutton "valider" et "commander" sauf que je ne doit pas t'afficher commander que lorsque t'a deja cliquer sur valider
ok pour le troisieme point
alors t'a terminer de saisir tu clique sur valider le navigateur me recharge une deuxieme fois
c'est la que tous vas se jouer
deja avec
if ($page->maj) {
}
je sais maintenant que le bouton valider a été cliquer
donc ce qui reste a faire c'est cacher "valider" et afficher "commander"
ce qui donne
$code ="
document.getElementById('maj').style.display='none';
document.getElementById('com').style.display='block';";
j'espere que c'est clair mais pour t'aider plus je reposte ton code avec les modifications
<?php
/*************************************************************************************************
** programme principal **
*************************************************************************************************/
if ($page->maj) {
// si on doit afficher commander on cree une variable $code qui va contenir le code du javascript
// permettant d'afficher le bouton "commande" et de cacher le bouton "valider"
// sinon on crée une variable $code qui permet de faire le contraire
if ($showHide) {
devil_may_cry
Messages postés194Date d'inscriptiondimanche 18 mars 2007StatutMembreDernière intervention11 juillet 2015 29 avril 2010 à 13:33
debog avec sa pour voir dans lequel on rentre le if ou le else et dit moi ce que ca donne
if ($showHide) {
echo "if";
$code ="
document.getElementById('maj').style.display='none';
document.getElementById('com').style.display='block';";