Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  php calc märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
lil-nuki
HV vaatleja
lil-nuki

liitunud: 08.09.2007




sõnum 07.03.2011 08:15:16 php calc vasta tsitaadiga

Probleem nimelt selles sai tehtud väike jupp php kalkulaatorist kuid probleem seiseneb selles, et vajutades arvuta nuppu ei väljasta vastust.
elseif($leht == "KALK"){
      $pealkiri = "KALK";
      $sisu = 'Kalkulaator';
      $sisu .= <<<EOF
<form method="POST" action="?leht=KALK">
<label>Arv 1: </label>
<input type="text" name="val1" />
<select>
  <option value="add" name="calc">liida</option>
  <option value="subtract" name="calc">lahuta</option>
  <option value="multiply" name="calc">korruta</option>
  <option value="divide" name="calc">jaga</option>
</select>
<label>Arv 2: </label>
<input type="text" name="val2" />
<br />
<input type="submit" value="ARVUTA" name="B1">
</form>
<? echo "$result"; ?>

EOF;
if (($_POST[val1] == "") || ($_POST[val2] == "") || ($_POST[calc] == ""))
   if ($_POST[calc] == "add") {
    $result = $_POST[val1] + $_POST[val2];
   } else if ($_POST[calc] == "subtract") {
    $result = $_POST[val1] - $_POST[val2];
   } else if ($_POST[calc] == "multiply") {
    $result = $_POST[val1] * $_POST[val2];
   } else if ($_POST[calc] == "divide") {
    $result = $_POST[val1] / $_POST[val2];

}


küsiks siis juba teie poolset abi veel, et kuidas ma teen nii et kui ta vastuse kätte andnud ma teeks linnukese kasti ning siis ta jätaks meelde esimeses kastis oleva arvu ning teise kasti sisestan uue arvu siis ta arvutab edasi saadud vastuse seni kui võtan alumisest kastist linnukese ära?
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 07.03.2011 08:43:08 vasta tsitaadiga

Sul on echo $result ennem kui $result välja arvutatakse. See peabki tühi olema.
Veel on sul veider tingimus, arvutama hakatakse alles siis kui vähemalt üks väli on tühi

if (($_POST[val1] == "") || ($_POST[val2] == "") || ($_POST[calc] == ""))

ja peale seda soovid sealt tühjast väljast andmeid saada peaks kontrollima ikka, et ükski poleks tühi

if (($_POST[val1] != "") and ($_POST[val2] != "") and| ($_POST[calc] != ""))

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
lil-nuki
HV vaatleja
lil-nuki

liitunud: 08.09.2007




sõnum 07.03.2011 15:03:58 vasta tsitaadiga

sama jama on ka sellise poolse versiooniga.
elseif($leht == "KALK"){
      $pealkiri = "KALK";
      $sisu = 'Kalkulaator';
      $sisu .= <<<EOF
<form action=?leht=KALK method=post>
Esimene number:<input type="text" name="nr1"><br>
Teine number:<input type="text" name="nr2"><br>
<input type="submit" name="korruta" value="Korruta">
<input type="submit" name="jaga" value="Jaga">
<input type="submit" name="liida" value="Liida">
<input type="submit" name="lahuta" value="Lahuta">

EOF;
if($korruta){
$vastus = $nr1 * $nr2;
echo $vastus;

}elseif($jaga){
$vastus = $nr1 / $nr2;
echo $vastus;

}elseif($liida){
$vastus = $nr1 + $nr2;
echo $vastus;

}elseif($lahuta){
$vastus = $nr1 - $nr2;
echo $vastus;

}

}
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 07.03.2011 20:55:58 vasta tsitaadiga

Sul oli EOF taga tühikud, kas veateadet ei lugenud?
Oleksid võinud ju vabalt ka jutumärke kasutada muutuja tekitamisel.
$sisu polnud ka kusagil välja echo tud.
Ära kunagi looda, et server toetab otse POST ülekandmist muutujale, enamuses ei toeta.


      $pealkiri = "KALK";
      $sisu = 'Kalkulaator';
$sisu.=<<<EOF
<form action=?leht=KALK method=post>
Esimene number:<input type="text" name="nr1"><br>
Teine number:<input type="text" name="nr2"><br>
<input type="submit" name="korruta" value="Korruta">
<input type="submit" name="jaga" value="Jaga">
<input type="submit" name="liida" value="Liida">
<input type="submit" name="lahuta" value="Lahuta">

EOF;
echo $sisu.'<br><br>';

if($korruta){
$vastus = $_POST['nr1'] * $_POST['nr2'];
echo $vastus;

}elseif($jaga){
$vastus =$_POST['nr1'] / $_POST['nr2'];
echo $vastus;

}elseif($liida){
$vastus =$_POST['nr1'] + $_POST['nr2'];
echo $vastus;

}elseif($lahuta){
$vastus =$_POST['nr1'] - $_POST['nr2'];
echo $vastus;

}

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  php calc
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.