Autor | Zpráva | ||
---|---|---|---|
Jan Profil |
#1 · Zasláno: 30. 4. 2010, 00:35:24 · Upravil/a: Jan
Ahoj
mám takovíto problém, mám select box, kterým si zvolím druh poštovného, tím e mi okamžitě po zvolení zobrazí částka poštovného, potřeboval bych ji ale v php sečíst s celkovou sumou zboží, takže potřebuji nějak ze select boxu dostat nějakou proměnou. zde je kod: <select name="sel" onchange="zjisti(this);"> <option value="60">Předem na účet</option> <option value="110">Dobírkou</option> <option value="130">Obchodní balík</option> <option value="0">Osobní předání</option> </select> <script> function zjisti(policko){ var prvek=policko.options[policko.selectedIndex].value; var objekt=document.getElementById("divek"); objekt.innerHTML=prvek; } </script> <div id="divek" ></div> A to to bych potreboval pro secteni zde : <?php echo ($subTotal + $shopConfig['divek']); print (" Kč"); ?> |
||
bohyn Profil |
#2 · Zasláno: 30. 4. 2010, 00:44:09
Jan:
Předpokládám že formulář odesíláš přes post. <?php echo $subTotal + $shopConfig['divek'] + $_POST['sel']." Kč";?> Proč ten titulek? Nemůžeš se rozhodnout co je to z jazyk? |
||
Jan Profil |
#3 · Zasláno: 30. 4. 2010, 00:49:38
Ne titulek je kvuli tomu ze stranka je psana v php a html a ktomu je pridany ten java skript pro zobrazovani postovneho.
Když jsem zkusil co jsi mi napsal píše mi to chybu Notice: Undefined index: sel in a cestu k souboru.... Proste nevim jak z toho maleho java skriptu vytahnout promenou/nebo ji vyrtovrit Dky za rady |
||
Jan Profil |
#4 · Zasláno: 30. 4. 2010, 00:51:20 · Upravil/a: Jan
jedná se o řádek 148
zde je kod cele stranky <?php header("Content-Type: text/html; charset=utf-8"); ?> <body background="pozadi.gif"> <table style="width:890px;height:580px;" align="center" cellpadding="0px" cellspacing="0px" > <tr> <center> <img src="img/0z3.png"></a> </center> </tr> <tr> <br> <td style="height:25px; width:15px; background:url('img/tabulka/cor_lh.png') no-repeat ;"></td> <td style="height:25px; width:840px; background:url('img/tabulka/top.png') repeat-x ;"></td> <td style="height:25px; width:15px; background:url('img/tabulka/cor_ph.png') no-repeat ;"></td> </tr> <tr> <td style="height:400px; width:25px; background:url('img/tabulka/left.png') repeat-y ;"></td> <td> <table background="pozaditabulky.gif" style="width:840px;height:580px;" cellpadding="0px" cellspacing="0px"> <td> <?php require_once 'library/config.php'; require_once 'library/cart-functions.php'; $action = (isset($_GET['action']) && $_GET['action'] != '') ? $_GET['action'] : 'view'; switch ($action) { case 'add' : addToCart(); break; case 'update' : updateCart(); break; case 'delete' : deleteFromCart(); break; case 'view' : } $cartContent = getCartContent(); $numItem = count($cartContent); $pageTitle = 'Shopping Cart'; require_once 'include/header.php'; // show the error message ( if we have any ) displayError(); if ($numItem > 0 ) { ?> <form action="<?php echo $_SERVER['PHP_SELF'] . "?action=update"; ?>" method="post" name="frmCart" id="frmCart"> <table width="780" border="0" align="center" cellpadding="5" cellspacing="1" class="entryTable"> <tr class="entryTableHeader"> <td colspan="2" align="center">Zboží</td> <td align="center">Cena</td> <td width="75" align="center">Množství</td> <td align="center">Celkem</td> <td width="75" align="center"> </td> </tr> <?php $subTotal = 0; for ($i = 0; $i < $numItem; $i++) { extract($cartContent[$i]); $productUrl = "index.php?c=$cat_id&p=$pd_id"; $subTotal += $pd_price * $ct_qty; ?> <tr class="content"> <td width="80" align="center"><a href="<?php echo $productUrl; ?>"><img src="<?php echo $pd_thumbnail; ?>" border="0"></a></td> <td><a href="<?php echo $productUrl; ?>"><?php echo $pd_name; ?></a></td> <td align="right"><?php echo ($pd_price); print (" Kč"); ?></td> <td width="75"><input name="txtQty[]" type="text" id="txtQty[]" size="5" value="<?php echo $ct_qty; ?>" class="box" onKeyUp="checkNumber(this);"> <input name="hidCartId[]" type="hidden" value="<?php echo $ct_id; ?>"> <input name="hidProductId[]" type="hidden" value="<?php echo $pd_id; ?>"> </td> <td align="right"><?php echo ($pd_price * $ct_qty); print (" Kč"); ?></td> <td width="75" align="center"> <input name="btnDelete" type="button" id="btnDelete" value="Vymazat" onClick="window.location.href='<?php echo $_SERVER['PHP_SELF'] . "?action=delete&cid=$ct_id"; ?>';" class="box"> </td> </tr> <?php } ?> <tr class="content"> <td colspan="4" align="right">Přepočet</td> <td align="right"><?php echo ($subTotal); print (" Kč"); ?></td> <td width="75" align="center"> </td> </tr> <tr class="content"> <tr class="content"> <td colspan="4" align="right">Poštovné <select name="sel" onchange="zjisti(this);"> <option value="60">Předem na účet</option> <option value="110">Dobírkou</option> <option value="130">Obchodní balík</option> <option value="0">Osobní předání</option> </select> </td> <td align="right"> <div id="divek" ></div> Kč <script> function zjisti(policko){ var prvek=policko.options[policko.selectedIndex].value; var objekt=document.getElementById("divek"); objekt.innerHTML=prvek; } </script> </td> <td width="75" align="center"> </td> </tr> <tr class="content"> <td colspan="4" align="right">Celkem </td> <td align="right"><?php echo $subTotal + $_POST['sel']." Kč";?></td> <td width="75" align="center"> </td> </tr> <tr class="content"> <td colspan="5" align="right"> </td> <td width="75" align="center"> <input name="btnUpdate" type="submit" id="btnUpdate" value="Aktualizovat košík" class="box"></td> </tr> </table> </form> <?php } else { ?> <p> </p><table width="550" border="0" align="center" cellpadding="10" cellspacing="0"> <tr> <td><p align="center">Váš nákupní košík je prázdný</p> <p> Pokud vám nelze vložit zboží do košíku, prosím ujistěte se že váš internetový prohlížeč má v nastavení povoleny cookies a že žádný ochraný software neblokuje váš internetový košík. Pokud vám stále nefunguje vložení zboží do košíku, napište nám objednávku na objednavky@spodary.cz Děkujeme </p></td> </tr> </table> <?php } $shoppingReturnUrl = isset($_SESSION['shop_return_url']) ? $_SESSION['shop_return_url'] : 'index.php'; ?> <table width="550" border="0" align="center" cellpadding="5" cellspacing="1" class="entryTable"> <tr> <td width="150" class="entryTableHeader">Druh poštovného </td> <td class="content"> <input name="optPayment" type="radio" id="Dobirka" value="dobirka" checked="checked" /> <label for="Dobirka" style="cursor:pointer">Dobírka</label> <input name="optPayment" type="radio" value="cod" id="optCod" /> <label for="optCod" style="cursor:pointer">Předem na účet</label></td> </tr> </table> <table width="550" border="0" align="center" cellpadding="10" cellspacing="0"> <tr align="center"> <td><input name="btnContinue" type="button" id="btnContinue" value="<< Pokračovat v nákupu" onClick="window.location.href='<?php echo $shoppingReturnUrl; ?>';" class="box"></td> <?php if ($numItem > 0) { ?> <td><input name="btnCheckout" type="button" id="btnCheckout" value="Dokončit objednávku >>" onClick="window.location.href='checkout.php?step=1';" class="box"></td> <?php } ?> </tr> </table> <?php require_once 'include/footer.php'; ?> </td> </table> </td> <td style="height:400px; width:25px; background:url('img/tabulka/right.png') repeat-y ;"></td> <tr> <td style="height:25px; width:15px; background:url('img/tabulka/cor_ld.png') no-repeat ;"></td> <td style="height:25px; width:840px; background:url('img/tabulka/bottom.png') repeat-x ;"></td> <td style="height:25px; width:15px; background:url('img/tabulka/cor_pd.png') no-repeat ;"></td> </tr> </table> |
||
bohyn Profil |
#5 · Zasláno: 30. 4. 2010, 01:03:51
<?php if(!isset($_POST['sel'])) { $_POST['sel'] = 0; } echo $subTotal + $_POST['sel']." Kč";?> |
||
Jan Profil |
#6 · Zasláno: 30. 4. 2010, 08:03:04
bohyn:
Děkji za radu, co by t přesně mělo dělat ? Díky |
||
Chamurappi Profil |
#7 · Zasláno: 1. 5. 2010, 02:27:34
Reaguji na Jana:
„titulek je kvuli tomu ze stranka je psana v php a html a ktomu je pridany ten java skript“ Proč zmiňuješ v titulku Javu? „<div id="divek" ></div>“ „$shopConfig['divek']“ Předpokládáš, že se ti obsah <div> u odešle? Tak to nefunguje. Odesílají se jen formulářové prvky (třeba <input> , <select> atd.) s atributem name .
To, co vybereš v <select name="sel"> , se odešle jako sel a najdeš to v $_POST['sel'] .
Chceš-li, aby se formulář odeslal okamžitě po změně, stačí na to krátký skript, který snadno najdeš. |
||
Jan Profil |
#8 · Zasláno: 1. 5. 2010, 12:12:55
Chamurappi:
Děkuji za objasnění, jde mi to abych si zvolil ze selectu druh dopravy, ten se mi zobrazí v příslušné kolonce, to vše funguje, potom se mi ale i změnila konečná cena kteá je : $subTotal + $_POST['sel'] Děkuji za radu jak na to , pokud by bylo vhodnější použít radiobutton , rád se nechám poučit. Děkuji |
||
Časová prodleva: 14 let
|
0