Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit ner if () { anwendung
Ja hallo. wie kann ich die if anwendung schreiben, das er die eingabe nur weitergibt wenn Zahlen eingegeben werden?
mein jetziges script sieht so aus
if ($eingabe > 0 && $eingabe < 999999) {
// Wiedergabe
echo ("<FONT SIZE="3" FACE="verdana">Ihre Eingabe:<BR>");
echo ("blalalala");
echo ("<P><HR WIDTH="95%" COLOR="BLACK"><P></FONT>");
}else{
echo ("<B>Dies Ist keine gültige eingabe mehr.</B><BR></LI>");
echo ("<B>Nehmen sie bitte einen Gültigen Wert.<BR></LI>");
echo ("<P><HR WIDTH="95%" COLOR="BLACK"><P></FONT>");
}
jetzt prüft er ja leider nur ob es in dem zahlen bereich liegt.
Kann mir da vieleicht einer weiterhelfen?
thx schon mal
mFg
FloRos
12.11.2003, 17:57:45
if(is_numeric($eingabe))
{
echo "bla bla bla";
}
hm so einfach und ich komm ned drauf thx ^^ *g
so abba nu was anderes. jetzt kommt die else ausgabe wenn ich was anderes als zahlen eingabe, aber auch diese fehler
Warning: Division by zero in /home/www/doc/8699/addy/info_rechner.php on line 37
Warning: Division by zero in /home/www/doc/8699/addy/info_rechner.php on line 39
Warning: Division by zero in /home/www/doc/8699/addy/info_rechner.php on line 41
in diesen zeilen steht das.
$zeit_one_mb = round ($mb_one / $eingabe, 2);
$zeit_five_mb = round ($mb_five / $eingabe, 2);
$zeit_fiveteen_mb = round ($mb_fiveteen / $eingabe, 2);
also ich weiss beim besten willen ned was da falsch ist
FloRos
12.11.2003, 18:13:25
ganz einfach $eingabe hat den wert null.
Steht ja auch da division by zero
durch 0 teilen geht aber nich muss noch irgendwo ein Fehler sein es sei denn du gibst null ein :)
bin leider noch ned so lange an php dran und weiss auch ned mehr weiter.
<?
$bezugmbit = 128;
$bezugkbit = 8;
$mb_one = 1024;
$mb_five = 5120;
$mb_fiveteen = 15000;
$zeit = 60;
if ($submit != "$eingabe") {
// Rechnen mit den Variablen
// mbit
$mbit = round ($eingabe / $bezugmbit, 2);
// KBit
$kbit = round ($eingabe * $bezugkbit, 2);
// zeit, 1 MB , 5 MB, flashen
$zeit_one_mb = round ($mb_one / $eingabe, 2);
$zeit_one_mb2 = round ($zeit_one_mb / $zeit, 2);
$zeit_five_mb = round ($mb_five / $eingabe, 2);
$zeit_five_mb2 = round ($zeit_five_mb / $zeit, 2);
$zeit_fiveteen_mb = round ($mb_fiveteen / $eingabe, 2);
$zeit_fiveteen_mb2 = round ($zeit_fiveteen_mb / $zeit, 2);
// Ende Rechnen
}
if (is_numeric ($eingabe)) {
2 if abfragen abba wohl unvollständig
FloRos
12.11.2003, 18:34:08
wo kommt den $eingabe her??
durch ein Formular??
schätze mal schon.
kann mir das nur so vorstellen das du bei $eingabe
eine null eingeben hast oder nichts oder
dein Formular feld heißt nicht
<input type='TEXT' name='eingabe'>
kann es sein das es vielleicht anders heißt sonst kann ich es mir niht erklären....
lass dir mal $eingabe ausgeben.. echo $eingabe;
nee also so geht das wunderbar.
solange ich nur zahlen eingebe in das formular. das formular ist auch in der datei mit drin.
so also ich gebe dann zb: abc <-- ein und dann leider das
Warning: Division by zero in /home/www/doc/8699/team-cp.de/www/info_rechner.php on line 36
Warning: Division by zero in /home/www/doc/8699/team-cp.de/www/info_rechner.php on line 38
Warning: Division by zero in /home/www/doc/8699/team-cp.de/www/info_rechner.php on line 40
Dies Ist keine gültige eingabe mehr.
Nehmen sie bitte einen Gültigen Wert.
FloRos
12.11.2003, 18:44:29
achso ja das ist klar dir round() Funktion geht halt nur mit Zahlen wenn du abc eingibst klappt das nicht deswegen kannst du es ja in der if abfrage mit
is_numeric($eingabe)
abfangen..
if(is_numeric($eingabe))
{
echo "danke";
}
else
{
echo "Sie haben keine Zahl eingegeben :)";
}
:) thx geht soweit.
kannst mir jetzt noch sagen wie das is_numeric <-- bis buchstaben gilt?
find das leider ned =(
FloRos
12.11.2003, 18:59:18
Original geschrieben von open
kannst mir jetzt noch sagen wie das is_numeric <-- bis buchstaben gilt?
Ähh wie jetzt der soll doch die Buschstaben rausfiltern???
Versteh ich nicht
so ich hab da nu bissel anders gemacht, nu gehts.
;) thx nochmal
vBulletin® v3.8.3, Copyright ©2000-2024, Jelsoft Enterprises Ltd.