Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1352 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  choix du button radio à mettre dans un caddie

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

choix du button radio à mettre dans un caddie

n°1464031
mia84
Posté le 24-10-2006 à 13:55:57  profilanswer
 

Bonjour,
 
J'ai un gros pb qui sera très très simple pour beaucoup...
 
J'ai une boutique en ligne, où les clients peuvent choisir un produit en fonction d'une taille.
J'ai donc differente tailles (liée à des prix différents) dans une table : taille1, taille2 et prix1, prix2.
 
J'ai ensuite un caddie, où quand mon client à selectionné sa taille, son prix doit s'afficher.
 
Mon soucis est que mon caddie fonctionné très bien avec 1 prix (que j'avais precedemment nommé "prix" ), mais je ne sais pas comment faire pour lui dire que n'importe quel case cochée equivaut au "prix".
 
Pour l'instant j'ai dans ma page de produit :
 
  <? if ($prod['taille1'] =="" ){ echo "";} else {?>
<input type="radio" name="taille" value=1><?=$prod['taille1'] ?>
<?  
 $prix1 = $prod['prix1'] * (1-$prod['promotion']/100);
 
   if ($prod['promotion'] != 0) {?>
 
    <font color="#CC0000">Promotion : <? echo $prod['promotion'];  ?> %</font><br />
 
      <s><?=fprix($prod['prix1']); ?></s>&nbsp;
   
    <font color="#CC0000"><?=fprix($prix1); ?> € TTC</font><br />
 
    <? } else {?>
 
      <font color="#CC0000"><?=fprix($prix1); ?> € T.T.C</font><br />
 
    <? } ?> <?}?>
 
  <? if ($prod['taille2'] =="" ){ echo "";} else {?>
<input type="radio" name="taille" value=2><?=$prod['taille2'] ?>
 
<?  
 $prix2 = $prod['prix2'] * (1-$prod['promotion']/100);
 
   if ($prod['promotion'] != 0) {?>
 
    <font color="#CC0000">Promotion : <? echo $prod['promotion'];  ?> %</font><br />
 
      <s><?=fprix($prod['prix2']); ?></s>&nbsp;
   
    <font color="#CC0000"><?=fprix($prix2); ?> € TTC</font><br />
 
    <? } else {?>
 
      <font color="#CC0000"><?=fprix($prix2); ?> € T.T.C</font><br />
 
    <? } ?> <?}?>
 
 </select></span><br />

 
 
<input type="hidden" name="id_produit" value="<?=$prod['id_produit'] ?>" />
<a class="normal" href="Javascript:document.ajout<?=$prod['id_produit'] ?>.submit()">
<img src="<?=$wwwroot?>/images/caddie.gif" align=middle alt="" border="0" />
</a>
<a class="normal" href="Javascript:document.ajout<?=$prod['id_produit'] ?>.submit()">
Ajouter au caddie
</a>
 
 
Si qq'1 pouvait m'aider...
Merci d'avance

mood
Publicité
Posté le 24-10-2006 à 13:55:57  profilanswer
 

n°1464036
FlorentG
Unité de Masse
Posté le 24-10-2006 à 13:59:07  profilanswer
 

Sans vouloir être méchant, vu le code, j'aurais même pas envie de commander de peur des failles de sécurité :(
 
J'me demande si tu ne te lances pas dans un trop gros projet qui demande des connaissances avancées...

n°1464052
mia84
Posté le 24-10-2006 à 14:14:11  profilanswer
 

sympa,
 mais t'inkiet pas c pas un paiement par carte bancaire!
et puis c'est loin d'etre la totalité de mon code.
 
Sinon une petite aide?

n°1464076
omega2
Posté le 24-10-2006 à 14:41:49  profilanswer
 

FlorentG > J'ai peut être regardé trop vite, mais je ne voit pas où est la faille dans ce qu'il a écrit. A aucun moment il ne met le prix dans une balise input ou autre balise de formulaire.
Aprés qu'il utilise l'html comme en 1995, c'est une autre histoire.
 
mia84 > Qu'est ce que t'entends par "que n'importe quel case cochée equivaut au "prix"."?

n°1464094
FlorentG
Unité de Masse
Posté le 24-10-2006 à 15:00:39  profilanswer
 

omega2 a écrit :

FlorentG > J'ai peut être regardé trop vite, mais je ne voit pas où est la faille dans ce qu'il a écrit. A aucun moment il ne met le prix dans une balise input ou autre balise de formulaire.


Y'a pas de faille spécifique aussi. C'est juste qu'en général, c'est le genre de code à comporter des failles

n°1464149
mia84
Posté le 24-10-2006 à 15:35:42  profilanswer
 

éh bien j'ai une table Mysql qui s'appelle produit, avec "id_produit", "prix1", "prix2", "taille1", "taille2"...
 
j'ai mes cases à cocher où mon code appelle "prix1", "prix2"...
 
et j'aimerai faire en sorte que quelquesoit la case cochée, ça sorte un "prix" (général) afin que mon caddie l'affiche
 
car pour le moment j'ai dans mon caddie le code suivant :  
 
$qid = mysql_query("SELECT id_produit, promotion, prix1, prix2, prix3, prix4, prix5, prix6, prix7, prix8, prix9, prix10, prix11 FROM produits WHERE id_produit IN ($in_clause)" );
 
if ($qid) {
   
if (mysql_num_rows($qid) > 0) {
   
    while ($produit = mysql_fetch_array($qid)) {
     
$this->total += $this->articles[$produit['id_produit']] * $produit['prix1'] * (1-$produit['promotion']/100);
     
    }
   
Et comme vous voyez, sur la dernière ligne : ca ne peut me faire venir que mon prix1 et pas les autres... :/

n°1464195
omega2
Posté le 24-10-2006 à 15:53:56  profilanswer
 

Mauvaise organisation de la base de donnée.
Il aurait fallut séparer les infos générale du produit (nom, marque, ... ) des infos propre à un modéle donnée (taille, prix, couleur ...) De cette maniére, t'aurais une requette avec jointure (ou deux requettes) et il aurait suffit de boucler sur la requette pour obtenir les prix.
 
Là, avec ton organisation actuelle, t'es limité au niveau du nombre de prix par produit, tu consome une grande taille disque et mémoire même si un produit n'a qu'un seul prix et pour otbtenir le prix voulut t'es obligé de faire une boucle (d'indice $i par exemple) et de récupérer les données grace à une recherche par indice variable "$tab[{'prix'.$i}]" par exemple.
 
En bref, il vaut mieux revoir l'organisation des données si ca t'es possible et adapté le code ensuite que d'adapter ton code à l'organisation actuelle.

n°1464304
mia84
Posté le 24-10-2006 à 17:04:33  profilanswer
 

merci.
Vu que c'est urgent je vé voir comme ca pour le moment... mais je sais bien qu'il faut que je revoi la bd

n°1464566
mia84
Posté le 25-10-2006 à 09:45:45  profilanswer
 

Désolée de revenir sur mon pb... mais vu mon haut niveau... et comme je suis tétue...
 
Donc si j'ai bien comprix sur ma page de produit je fais une boucle :
 
<? $tab=array('prix1', 'prix2', 'prix3');
foreach ($tab as $prix){
}
?>
 
et pour recuperer le prix ds mon caddie j'ai ecrit ça :
 
 $qid = mysql_query("SELECT id_produit, promotion, prix1, prix2, prix3, prix4, prix5, prix6, prix7, prix8, prix9, prix10, prix11 FROM peel_produits WHERE id_produit IN ($in_clause)" );
 
if ($qid) {
   
if (mysql_num_rows($qid) > 0) {
   
while ($produit = mysql_fetch_array($qid)) {
     
$this->total += $this->articles[$produit['id_produit']] * $produit['$prix'] * (1-$produit['promotion']/100);
     
}
 
Bon apparement j'ai pas tout bien compris, puisque mon caddie me dit bien que j'ai un article, mais son prix est nul!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  choix du button radio à mettre dans un caddie

 

Sujets relatifs
condition avec boutons radioCreation de fichier binaire->choix du nombre de bits
Mettre un texte sur une image.Mettre une page a code pour vrais debutant
[Resolu][C#NET] Mettre le focus sur un onglet (pour le faire afficher)Mettre le contenu d'une variable en suffixe d'une autre?
Question bête : pourquoi radio bouton ?[HTML/JS]Mise a jour d'une image apres un choix dans une liste
Balises pour mettre une image sur un mail ?infos: mettre du php sur mon site pour des accès réservé ?
Plus de sujets relatifs à : choix du button radio à mettre dans un caddie


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR