SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 07.10.2005, 11:20:23
Eichbjörnchen Eichbjörnchen ist offline
Anfänger
 
Registriert seit: Sep 2005
Beiträge: 4
Zahlen vergleichen will net so wie ich will...

Hallo, hab mal wieder ein Problem und möchte wieder darauf hinweisen, dass ich immer noch Anfänger bin :-)
Erst mal mein Skript:
<?
if (isset($_POST['name'])) {
if ($_POST['name']!="" AND $_POST['datum']!="" AND $_POST['uhrzeit_s']!=""
AND $_POST['dauer']!="" AND $_POST['thema']!="") {
$datum = $_POST['datum'];
$name = $_POST['name'];
$uhrzeit_s =$_POST['uhrzeit_s'].":00";
$dauer =$_POST['dauer'];
$punkt_tester = strpos ($dauer, ".");
if ($punkt_tester === false) {
$dauer = str_replace(",", ".", $dauer);
}
$dauer_speicher = $dauer;
for (; $dauer>0; $dauer--) {
if ($dauer<1 AND $dauer!=0) {
echo "Es ist nicht eine ganze Zahl<br>Rest: $dauer - <blink>$dauer_speicher</blink><br>";
for ($asd=1; $asd<100; $asd++) {
echo "$dauer - ".($asd/100)."<br>";
if ($dauer==($asd/100)) {
$dauer_min=(60*$dauer);
echo "Der Rest ist ".($asd/100)." h, das sind $dauer_min min<br>";
}
}

}
else {
echo "$dauer<br>";
}
} ...
jetz hab ich folgendes Problem. Wenn ich in einer Maske meine Daten für Dauer eingebe macht er nicht wirklich das, was ich will.
Wenn ich Dauer = 2.0 eingebe, macht er das Richtige
Wenn ich Dauer = 2.25, 2.5 oder 2.75 eingebe, dann klappt auch der Vergleich.
Aber wenn ich Dauer = z.B. 2.8, 5.7, 1.11 eingebe, dann klappt der Vergleich von $dauer und $asd/100 net. Wenn ich aber anstatt 1.11 0.11 eingebe (für alle 0.xx), dann klappt es. Ich steige aber net dahinter, warum 2.11 -1 -1 =0.11 anders sein soll, als wenn ich direkt 0.11 eingebe. Hä? Hilfe...
Ich weiß, es ist umständlich geschrieben, aber wie gesagt, ich bin Anfänger. Es muss später in der DB auch Startzeit, Endzeit und Dauer drinnen stehen. Aber das klappt. Nur nicht dieser Vergleich.
Danke schon mal und ich hoffe ihr kommt durch meinen Text einigermaßen durch :-)
Björn
Mit Zitat antworten
  #2  
Alt 07.10.2005, 17:20:17
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Zahlen vergleichen will net so wie ich will...

> Ich steige aber net dahinter, warum 2.11 -1 -1 =0.11 anders sein soll, als wenn ich direkt 0.11 eingebe. Hä? Hilfe...

Intern konvertiert PHP die Zahlen vom Dezimalsysten ins Binärsystem. Problematisch sind dabei die Werte nach dem Komma, weil es dabei bisweilen zu unendlichen Binärbrüchen kommt (ZB. bei 0.2). Das ist bei fast allen Programmiersprachen so, wenn die keine Dezimalarithmetik verwenden.

Wenn Du mit float Zahlen rechnest, mußt Du bei Vergleichen zwingend vorher auf die relevante Anzahl an Nachkommastellen runden.
Sonst wäre zB.
PHP-Code:
print (0.2 == (0.2 0.2 0.2 0.2) ) ? 'gleich' 'ungleich'
immer falsch.

Geändert von meikel (†) (07.10.2005 um 17:24:54 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Jokerzeichen bei Mysql-Abfrage von Zahlen? BenjaminG PHP Grundlagen 2 15.08.2004 14:01:51
Verschiedene Zahlen Sebhe PHP Grundlagen 8 05.01.2004 19:43:16
Mehrere Zahlen addieren Idolast PHP Grundlagen 3 31.10.2003 17:53:47
Genauigkeit von Zahlen bei PHP/MySQL Trialrider PHP Grundlagen 3 11.07.2003 15:57:33
klicks zählen aber wie ?? col7 PHP für Fortgeschrittene und Experten 5 14.03.2003 14:57:29


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:32:15 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt