8791 sujets

Développement web côté serveur, CMS

Bonjour à tous.

J'ai un gros souci avec mon formulaire qui se trouve dans la page "boutique40.php".
Je n'arrive pas à tester (correctement) les checkbox et les radio !
Pour info, je dois avoir les 2 checkbox toutes 2 cochées et un seule des 2 boutons radio noirci !
Pouvez m'aider à y voir plus clair ?
Grand merci d'avance pour le temps que vous passerez à m'aider !

Voici le début de la page :

<?php
	session_start();
	ob_start();
	$php="boutique40";
	
	$validation="no";
	if (isset($_GET['validation']) && !empty($_GET['validation'])) {
		$validation=$_GET['validation'];
	}

	$cumulHTVA=$_SESSION['panier']['cumulHTVA'];
	$cumulTVAC=$_SESSION['panier']['cumulTVAC'];
	$cumulTVA=$cumulTVAC-$cumulHTVA;
	
	if ($validation=='ok') {
		$cond01=trim($_POST['cond01']);
		$cond02=trim($_POST['cond02']);
		$moyen=trim($_POST['moyen']);
		if ($cond01==1 AND $cond02==1 AND ($moyen=="virement" OR $moyen=="paypal")) {
			echo "ok";
		}
	}
	ob_end_flush();
?>


et une partie du code entre les balises body et /body

	<div id="paiement">
    	<form name="paiementok" action="boutique40.php" method="post">
        <table border="0" align="left" cellspacing="0" id="tablepaiement" style="vertical-align:middle;">
            <tr>
            <td width="75"></td>
            <td width="472"></td>
            <td width="125"></td>
            </tr>
            
            <tr>
            <td colspan="3" style="padding:7px;" bgcolor="#0E72B5" class="blanc bold">Confirmation de commande</td>
            </tr>
            
            <tr>
            <td width="75"></td>
            <td width="472" align="right" style="font-size:15px;">&nbsp;</td>
            <td width="125">&nbsp;</td>
            </tr>
            <tr>
            <td width="75"></td>
            <td width="472" align="right" style="font-size:15px; padding-bottom:3px; padding-top:3px;">Prix HTVA :&nbsp;</td>
            <td width="125" align="right"><?php echo number_format($cumulHTVA,2,',',' '); ?>&nbsp;€&nbsp;&nbsp;</td>
            </tr>
            <tr>
            <td width="75"></td>
            <td width="472" align="right" style="font-size:15px; padding-bottom:3px; padding-top:3px;">TVA :&nbsp;</td>
            <td width="125" align="right"><?php echo number_format($cumulTVA,2,',',' '); ?>&nbsp;€&nbsp;&nbsp;</td>
            </tr>
            <tr>
            <td width="75"></td>
            <td width="472" align="right" class="bold" style="font-size:15px; padding-bottom:3px; padding-top:3px;">Prix TVAC :&nbsp;</td>
            <td width="125" align="right" class="bold"><?php echo number_format($cumulTVAC,2,',',' '); ?>&nbsp;€&nbsp;&nbsp;</td>
            </tr>
            <tr>
            <td width="75"></td>
            <td width="472" align="right" style="font-size:15px;">&nbsp;</td>
            <td width="125">&nbsp;</td>
            </tr>
            
            <tr>
            <td colspan="3" style="padding-left:7px; font-size:13px;">
     			<input type="checkbox" name="cond01" id="cond01" value="0">&nbsp;Je verse la somme de <span class="bold"><?php echo number_format($cumulTVAC,2,',',' '); ?>&nbsp;€</span>
            </td>
            </tr>
            <tr>
            <td colspan="3" style="padding-left:7px; font-size:13px;">
     			<Input type = 'Radio' name ='moyen' id="moyen" class="decalage" value= 'virement'>&nbsp;par virement bancaire
				<p style="margin-left:37px; line-height:13px; margin-top:0px; margin-bottom:0px; padding-left:0px;">
                    Bénéficiaire : <span class="bold">societe</span>&nbsp;&nbsp;&nbsp;IBAN : <span class="bold">BE99.9999.9999.9999</span>&nbsp;&nbsp;&nbsp;BIC : <span class="bold">BBBBBBBB</span><br>
					Communication : <span class="bold">commande 1201001</span></p>
            </td>
            </tr>
            <tr>
            <td colspan="3" style="padding-left:7px; font-size:13px;">
                <Input type = 'Radio' name ='moyen' id="moyen" class="decalage" value= 'paypal' style="font-size:7px; margin-top:0px; padding-top:0px; line-height:10px;">&nbsp;par Paypal<br>&nbsp;
            </td>
            </tr>
            <tr>
            <td colspan="3" style="padding-left:7px; font-size:13px;">
     			<input type="checkbox" name="cond02" id="cond02" value="0">&nbsp;J’ai lu et je suis d’accord avec ce qui suit :
            </td>
            </tr>
            <tr>
            <td colspan="3" style="padding-left:7px; font-size:13px;">
                	<ul>
                    <li>Détail de la commande ici</li>
                    <li>Je reçois un mail de confirmation de ma commande, reprenant toutes les informations<br>
                      pour le paiement</li>
                    <li>Je serai contacté(e) par mail dès réception du paiement pour pouvoir imprimer ma facture</li>
                    <li>Dès que les travaux demandés seront terminés dans les délais, je serai immédiatement<br>
                        averti(e) par mail. Un lien vous sera alors fourni pour le téléchargement.</li>
                    </ul> 
            </td>
            </tr>
        </table>
	</form>
	</div>
	<div id="suivant" <?php echo ($cumulTVAC>0)?"style='visibility:visible;'":"style='visibility:hidden;'"; ?>><a href="<?php echo (isset($_COOKIE['CFVespace']))?'boutique40.php?validation=ok':'boutique20.php' ?>">Valider</a></div>


Modifié par Geoffrey C. (26 Jan 2012 - 15:08)
Bonjour....

Ah si le débuggage était appris lui aussi Smiley smile

tu saurais qu'en faisant un print_r de ton GET ou meme de ta session tu verrai de quoi est constitué ton envoi...

et donc tu saurais sans poser de question qu'un checkbox renvoi "on" et qu'un radio renvoi la value qu'on lui assigne...

Pour le reste maintenant que tu sais, tu devrais y arriver

;)
Merci pour cette remarque... J'en ai pris bonne note...
J'avais déjà utilisé le print_r... et aussi, var_dump...
de mon tableau $_POST (et non $_GET) !!!

Sauf que mon problème est toujours le même...
les $_POST sont tous vides !!!

Le problème ne vient-il pas plutôt du bouton (personnalisé)
de validation du formulaire ? Mais comment solutionner cela ?
Quelquechose m'échappe... J'en peux plus !!! Mais quoi ?

A l'aide svp. !
Modifié par jytest (23 Jan 2012 - 21:13)
à la vache j'avais pas remarqué le "bouton" de validation....

Il faut que tu revois tes connaissances concernant les formulaires Smiley smile

primo, le submit du post se fait toujours dans les balises form

si on utilise pas de submit, on passe par un bouton image qui lui aussi doit etre entre les balises form

et en dernier recours si on veut un bouton un peu particulier on utilise du js sur un lien ou n'importe quel autre élément qui sur le onclick va faire un form.submit()....

Dans tous les cas IL FAUT que le formulaire reçoive un submit pour passer les variables, sinon bien entendu tu n'envoi rien !!!!
J'avais raison...
On peut bien mettre un bouton submit hors d'une form !!!
Mes bases ne sont finalement pas si mauvaises que cela !!!

Fallait juste corriger :
<div id="suivant" <?php echo ($cumulTVAC>0)?"style='visibility:visible;'":"style='visibility:hidden;'"; ?>><a href="<?php echo (isset($_COOKIE['CFVespace']))?'boutique40.php?validation=ok':'boutique20.php' ?>">Valider</a></div>


par :
<div id="suivant" <?php echo ($cumulTVAC>0)?"style='visibility:visible;'":"style='visibility:hidden;'"; ?>><a href="#" onclick="javascript:document.paiementok.submit();">Valider</a></div>

Modifié par jytest (24 Jan 2012 - 11:57)