ďťż

[PHP] puste pola formularza i liczenie łatwość

       

Podstrony


telcocafe

cze

mam formularz w ktorym wpisuje sie cyferki a on ma te cyferki pomnozyc to takie zadanko no nie
i chce zrobic ze $suma = $1 * $2 * $3 .... i jak to zrobic zeby nie robil mnozenia jak jakies ople jest puste

:o



isset

ale w jednym ciagu to zastosowac????
moglbys podac przyklad¿?

Hmmm, jeśli masz określone że te trzy zmienne to możesz po kolei robić isset dla każdej, jeśli natomiast nieokreślona liczba to coś w stylu:

$licz = ''; $i=0; foreach ($_POST as $key=>$value) { // przyjmujac ze pobieramy dane z post if ($i==count($_POST)) { $licz .= $value; } else { $licz .= $value.' * '; } $i++; } eval ('$suma = '.$licz); echo $suma;
To tylko przykład, być może da się to zrobić jakoś inaczej.
Użytkownik Einzeinbleth edytował ten post 04 lipiec 2006, 12:27


nie rozumiem :-(
nie znam eval count itp.

mam po prostu

$1
$2
$3

i chce miec $iloczyn
przy czym nie ma brac pustej
;-(

prosze o pomoc
jezeli to niezrozumiale to napiszcie postaram sie wytluamczyc inaczej


(...) i jak to zrobic zeby nie robil mnozenia jak jakies ople jest puste

:o

dzieki sauron za odpowiedz ALE

sek w tym, ze ja nie wymagam, aby wpisac liczby do wszystkich pol


sek w tym, ze ja nie wymagam, aby wpisac liczby do wszystkich pol

<?php $iloczyn=1; if (isset($_POST['1']) { $iloczyn=$_POST['1']; } if (isset($_POST['2']) { $iloczyn= ($iloczyn * ($_POST['2'])); } if (isset($_POST['3']) { $iloczyn= ($iloczyn * ($_POST['3'])); } echo $iloczyn; ?>
Użytkownik KSMłody edytował ten post 04 lipiec 2006, 15:55
Eh sorry :| ale widze ze zbytnio bazujecie na tym iloczynie
to mial byc przyklad zeby nie gmatwac ale widze ze wzieliscie ta w inna strone, sorry :|
wiec postaram sie czytelnie i zrozumiale
są pola
liczymy stopnie

poniedzialek 4
wtorek 5
sroda 3
czwartek
piatek 1

takie są oceny pana X z tych dni
a w czwartek np. wlasnie tu nic nie dostal
i wlicz tu panie srednią


takie są oceny pana X z  tych dni
a w czwartek np. wlasnie tu nic nie dostal
i wlicz tu panie srednią

dane są w bazie danych, czy w pliku tekstowym? Jak w bazie to można to zrobić po stronie bazy samymi selectami, np:
wszystkie: select sum(pole_ocen) <--aby policzyc sumę wszystkich ocen
dzielnik: select * from tabela where 'ocena' > 0 i potem przez mysql_num_rows wyciągasz liczbę niezerowych ocen, dzielisz jedno przez drugie i z bańki

?!

przeciez wtedy bede mial np.

( 4 + 4 + 1 + 0 + 5 ) /5
a powinno byc
( 4 + 4 + 1 + 5 )/4

;|
w czwartek oceny nie dostał


dane są w bazie danych, czy w pliku tekstowym? Jak w bazie to można to zrobić po stronie bazy samymi selectami, np:

z formularza :-)
Użytkownik VaV edytował ten post 04 lipiec 2006, 16:18
pisane z palca, nie wiem czy nie ma byków, nie mam gdzie sprawdzić
$pon=(int)$GET_['poniedzialek']; $wto=(int)$GET_['wtorek']; $sr=(int)$GET_['sroda'];  //zakładam że wysyłałeś getem $czw=(int)$GET_['czwartek']; $pia=(int)$GET_['piatek']; $suma=0; $licznnik=0; if $pon >=0 {  $suma=$suma+$pon;  $licznik=$licznik+1; } if $wto >=0 {  $suma=$suma+$wto;  $licznik=$licznik+1; } if $sr >=0 {  $suma=$suma+sr;  $licznik=$licznik+1; } if $czw >=0 {  $suma=$suma+$czw;  $licznik=$licznik+1; } if $pia >=0 {  $suma=$suma+$pia;  $licznik=$licznik+1; } $srednia=$suma/licznik; echo $srednia;


//zakładam że wysyłałeś getem

postem
czyli po prostu zamienic ??

ide o zakład że szybciej byś to sprawdził niż napisałe tego posta :(

a do czego służy (int) ??

TO działa chyba tak jak chciałeś:
<form action="iloczyn.php" method="post"> A:<input type="text" name="1"><br> B:<input type="text" name="2"><br> C:<input type="text" name="3"><br> <input type="submit" value="Pomnóż"><br> =====================<br> </form> <? $iloczyn = 1; $z=0; for ($i=1; $i<4; $i++)  {     if ($_POST[$i])    {       $iloczyn *= $_POST[$i];    echo 'Zmienna '.$i.' wynosi '.$_POST[$i].'<hr>';    $z++;     }  }  if ($z==0 || $z==1)    {   echo 'Iloczyn = 0.'; } else {      echo 'Iloczyn = '.$iloczyn; } ?>


a do czego służy (int) ??

(int) służy do rzutowania typu, a w moim przykładzie strzeliłem błąd
powinno być $GET_['pon'] itd, zamiast $_GET, za dużo czasu przy komputerze dzisiaj ;)
Ten int możesz pominąć

chicken rzondzi!!!!!!!!!!!!!!!!!!! !!!!!!1

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.