Scix Skrevet 12. august 2005 Skrevet 12. august 2005 Jeg sitter å leker meg litt her, og lurte på hvordan jeg kan gjøre en string om til tall... Si at $_POST['noe'] = "1+5" Hvordan skal jeg få denne til å bli kalkulert?
Loomy Skrevet 12. august 2005 Skrevet 12. august 2005 Hvis den kun skal funke i "X+Y"-formatet kan du bruke følgende: $tall = explode('+', $_POST['noe']); $total = $tall[0] + $tall[1];
Scix Skrevet 12. august 2005 Forfatter Skrevet 12. august 2005 (endret) joda. men det kan komme annet en "+". Det er snakk som en kalkulator. og siden hele reknestykket blir skrevet i en textbox, så lurte jeg på om jeg kunne gjøre $_POST['noe'] om til ett vanlig reknestykke... Edit: skrivefeil Endret 12. august 2005 av Scix
Magnus Holm Skrevet 12. august 2005 Skrevet 12. august 2005 (endret) <?php function kalkulator($calc) { if (strpos($calc, "+") !== false) { $ex = explode("+", $calc); return $ex[0] + $ex[1]; } elseif (strpos($calc, "-") !== false) { $ex = explode("-", $calc); return $ex[0] - $ex[1]; } elseif (strpos($calc, "*") !== false) { $ex = explode("*", $calc); return $ex[0] * $ex[1]; } elseif (strpos($calc, "/") !== false) { $ex = explode("/", $calc); return $ex[0] / $ex[1]; } } ?> IKKE testet... Du bruker det sånn: echo kalkulator("6*7"); eller: echo kalkulator($_POST['noe']); EDIT: NÅ skal den virke Endret 12. august 2005 av Judofyr
nthing Skrevet 12. august 2005 Skrevet 12. august 2005 $tall = explode('+-/*', $_POST['noe']); $total = $tall[0] + $tall[1]; skal ikke det funke?
Magnus Holm Skrevet 12. august 2005 Skrevet 12. august 2005 Nopp. Den der plusser jo ved at du skriver +-/*...
kakkle Skrevet 12. august 2005 Skrevet 12. august 2005 (endret) Evt, så kan du bruke eval og slippe alle if'ene <? $regnestykke = "2*3" // "2*3" kan f.eks komme fra formen; eval("\$resultat = ".$regnestykke.";"); echo $regnestykke." = ".$resultat; ?> Da kan $regnestykke være +,-,*,/ eller hva som helst, og du vil få resultatet av regnestykket EDIT: Du bør sjekke at det som kommer fra formen faktisk er et regnestykke, og ikke noe annet, da det kan være litt skummelt, føler jeg på meg. Dette gjør du ved å sjekke at det inneholder kun tall og de operatorene som skal være lov. Endret 12. august 2005 av kakkle
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå