Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: liczenie cen
Forum PHP.pl > Forum > PHP
tenior
mam dwie male tabelki, wstawiam cene i chce zemy mi obliczylo jak klikne slot * cena
tutaj kod
  1. <?PHP
  2. if ($_POST['licz'] == "Przelicz") {
  3. if ($slot = ($_POST['slot'] != "") AND $cena = ($_POST['cena'] != "")) {
  4. $licz = ($slot*$cena);}
  5. }
  6. ?>


  1. <form action="" method="post">
  2. <input maxlength="5" size="3" name="slot" value="" />
  3. <input maxlength="5" size="3" name="cena" value="" />
  4. <input value="Przelicz" name="licz" type="submit" />
  5. <br><?PHP echo $licz ?>


ale cos nie gra bo nie chce mi liczyc
artur_dziocha
  1. <input maxlength="5" size="3" name="slot" value="" />
  2. <input maxlength="5" size="3" name="cena" value="" />

spróbuj bez value
  1. <input maxlength="5" size="3" name="slot" />
  2. <input maxlength="5" size="3" name="cena" />


  1. <?php
  2. $licz=$_POST['licz'];
  3. $slot = $_POST['slot'];
  4. $cena=$_POST['cena'];
  5. if(isset($licz)) {
  6. if(isset($slot && $cena)){
  7. echo $cena*$slot;
  8. }
  9. else {
  10. echo "czegos brakuje";
  11. }
  12. }
  13.  
  14. ?>
ziqzaq
Tip: var_dump() winksmiley.jpg

  1. <?PHP
  2. if ($_POST['licz'] == "Przelicz") {
  3. if ($slot = ($_POST['slot'] != "") AND $cena = ($_POST['cena'] != "")) {
  4. var_dump($slot);
  5. var_dump($cena);
  6. $licz = ($slot*$cena);}
  7. }
  8. ?>
  9. <form action="" method="post">
  10. <input maxlength="5" size="3" name="slot" value="" />
  11. <input maxlength="5" size="3" name="cena" value="" />
  12. <input value="Przelicz" name="licz" type="submit" />
  13. <br>
  14. <?php echo $licz ?>


Pozdrawiam.
tenior
problem nadal nie rozwiazany sad.gif

Cytat
  1. <input maxlength="5" size="3" name="slot" value="" />
  2. <input maxlength="5" size="3" name="cena" value="" />

spróbuj bez value
  1. <input maxlength="5" size="3" name="slot" />
  2. <input maxlength="5" size="3" name="cena" />


  1. <?php
  2. $licz=$_POST['licz'];
  3. $slot = $_POST['slot'];
  4. $cena=$_POST['cena'];
  5. if(isset($licz)) {
  6. if(isset($slot && $cena)){
  7. echo $cena*$slot;
  8. }
  9. else {
  10. echo &#092;"czegos brakuje\";
  11. }
  12. }
  13.  
  14. ?>


tutaj u Ciebie wyskakuje blad
Cytat
Parse error: syntax error, unexpected T_BOOLEAN_AND, expecting ',' or ')' in /home/tenior/www/strona/oferta.php on line 6



a u drugiego kolegi wyskakuje u gory zamiast liczenia
Cytat
bool(true) bool(true)
artur_dziocha
  1. <?php
  2. $licz=$_POST['licz'];
  3. $slot = $_POST['slot'];
  4. $cena=$_POST['cena'];
  5. if($licz == Przelicz) {
  6. if(isset($slot && $cena)){
  7. echo $cena*$slot;
  8. }
  9. else {
  10. echo "czegos brakuje";
  11. }
  12. }
  13.  
  14. ?>

Spróbuj też zamiast isset wpisac !empty
Michał C.
Przekombinowałeś z priorytetem operatorów, musisz poprawić linijkę nr 4, np. tak:
Kod
if ( (($slot=$_POST['slot']) != "") AND (($cena=$_POST['cena']) != ""))
Lonas
  1. <?php
  2. if($_POST['slot'] !== "" AND $_POST['cena'] != "")
  3. ?>
tenior
Michal rozwiazal problem, jednak mam jeszcze problem taki ze nie liczy miejsc po przecinku, np
3*2 on policzy dobrze ze jest to 6 ale 3*0,45 mi juz nie policzy, nie wiem dlaczego?
artur_dziocha
wczesniej sie pomylilem
round" title="Zobacz w manualu PHP" target="_manual
  1. <?php
  2.  
  3. $licz=$_POST['licz'];
  4. $slot = $_POST['slot'];
  5. $cena=$_POST['cena'];
  6. if($licz == 'Przelicz') {
  7.    if(!empty($slot) && !empty($cena)){
  8.        echo round($cena*$slot,2);
  9.    }
  10.    else {
  11.        echo "czegos brakuje";
  12.    }
  13. }
  14. ?>

lub twoje rozw
  1. <?php
  2. round($licz,3);
  3. ?>
tenior
ale gdzie to round wtawic mam, te twoje nie dziala
artur_dziocha
  1. <?php
  2. $licz = round($slot*$cena, 2);
  3. ?>

lub jakas inna liczba zalezy ile chcesz liczb po przecinki
tenior
nic z tego nie dziala

/edit
dziala mi z kropka ale to juz bez kombinowania
erix
Cytat
3*2 on policzy dobrze ze jest to 6 ale 3*0,45 mi juz nie policzy, nie wiem dlaczego?

Bo w języku polskim jako symbol dziesiętny jest przecinek, natomiast w PHP używaj kropki. winksmiley.jpg

A do formatowania liczb masz jeszcze number_format" title="Zobacz w manualu PHP" target="_manual i money_format" title="Zobacz w manualu PHP" target="_manual.
tenior
ok efekt mojej pracy z wasza pomoca jest taki smile.gif

  1. <?PHP
  2. if ($_POST['licz'] == "Przelicz") {
  3. if ( (($slot=$_POST['slot']) != "") AND (($cena=$_POST['cena']) != "") AND (($czas=$_POST['czas']) != "")) {
  4. $liczz = ($slot*$cena*$czas);}
  5. }
  6. ?>


  1. <form action="" method="post">
  2. &nbsp;<font face="Verdana" style="font-size: 7pt" color="#324D6C">IloĹÄ slot</font><label><span style="font-size:7pt;"><font face="Verdana" color="#324D6C">:</font></span></label>
  3. <input maxlength="3" TITLE="Ilosc slot" size="3" name="slot" value="10" />&nbsp;
  4. <label><span style="font-size:7pt;"><font face="Verdana" color="#324D6C">WartoĹÄ:</font></span></label>
  5. <input maxlength="5" TITLE="Uzywaj kropki, zamiast przecinka" size="3" name="cena" value="0.45" />
  6.  
  7. <label><span style="font-size:7pt;"><font face="Verdana" color="#324D6C">Liczba
  8. miesiÄcy: </font></span>
  9. <select name='czas' class='textbox' style='width:40px'>
  10. <option value=1>1</option>
  11. <option value=2>2</option>
  12. <option value=3>3</option>
  13. <option value=4>4</option>
  14. <option value=5>5</option>
  15. <option value=6>6</option>
  16.  
  17. <input value="Przelicz" name="licz" type="submit" />
  18. <br>
  19. </b>Cena: <?php echo $liczz ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.