Anzeige - [Interessiert an einer Anzeige?]
(?) Tags raten (?) flash rechnen (edit)
Seiten: (2) 1 [2]  ( Neuster Beitrag anzeigen )
Reply to this topicStart new topicStart Poll
> Flash rechnung...PHP-Hilfe gesucht, Flash soll anzeigen - PHP soll rechnen
Jörg Kruse
Geschrieben am: So 6.01.2008, 21:15
Report PostQuote Post

AyomRank 5
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 409
Mitglied seit: 19.12.2004


Ich habe die Tage nicht auf- oder abgerundet. Aber das geht natürlich auch, hier eine Aufrundung auf sechs Tage (die ja erst um Mitternacht voll wären):

QUOTE (Code)
$text3 = ($_GET["text1"]  / ceil((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));


Und so wird das Ergebnis noch auf- oder abgerundet auf eine volle Zahl:

QUOTE (Code)
$text3 = (int)($_GET["text1"]  / ceil((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));


--------------------
Top
PMEmail PosterUsers Website
Top
 
 
NC
#22 Geschrieben am: So 6.01.2008, 22:26 (+01:11)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 280
Mitglied seit: 17.03.2006


Unter
> $text3 = $_GET["text1"] / ((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60));
noch das einfügen:
> $text3 = round($text3, 0);
Top
PMEmail PosterUsers WebsiteICQ
Top
 
rosinenbomber-jk
#23 Geschrieben am: Mo 7.01.2008, 16:51 (+18:25)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


so, jetzt sieht es gut aus! nur noch eine frage:

wir haben heute den 07.01. durch wieviel tage teilt er die km, durch 6 oder 7? also laut dem ergebnis teilt er durch 6, und heute nacht sobald es 08.01. ist teilt er durch 7, ist das richtig? wenn das so ist waere es perfekt.

zweitens, woher nimmt das php sein datum und die zeit? von der windows systemuhr oder bios uhr? vielen dank fuer die bisherige hilfe, einfach super!!!

gruesse aus frankfurt danny
Top
PMEmail Poster
Top
 
Jörg Kruse
#24 Geschrieben am: Mo 7.01.2008, 17:06 (+00:14)
Report PostQuote Post

AyomRank 5
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 409
Mitglied seit: 19.12.2004


Der Code in meinem letzten Beitrag rundet die Tage auf, auf jetzt 7 Tage. Wenn du abrunden möchtest, must du statt ceil() floor() verwenden:

QUOTE (Code)
$text3 = (int)($_GET["text1"]  / floor((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));


QUOTE
zweitens, woher nimmt das php sein datum und die zeit?


Von dem Rechner, auf dem der Webserver (und PHP) läuft


--------------------
Top
PMEmail PosterUsers Website
Top
 
rosinenbomber-jk
#25 Geschrieben am: Mo 7.01.2008, 19:54 (+02:48)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


ggrrr...

irgendwie habe ich mir alles zerschossen oder so! ich habe unten im text eigentlich alles zusammengesetzt wie ihr es vorgeschlagen habt. leider kommt immer ein falsch errechneter wert. sieht jemand den fehler im code?

CODE
<?
if($_GET['submit']) {
//pfadangabe der Datei
$pfad = "tachodanny.txt";

//Öffnen der Datei
$fp = fopen($pfad,"r");
$str = fgets($fp,4096);
fclose($fp);


$text3 = (int)($_GET["text1"]  / ceil((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));
$text3 = round($text3, 0);

//Text ersetzen
$text = "&text1=". $_GET["text1"] ."&text2=". $_GET["text2"] ."&text3=".$text3;
//Text wieder zurück schreiben

$fp2 = fopen ($pfad,"w+");

if (!fwrite($fp2, $text)) {
echo "Kann in die Datei $pfad nicht schreiben";
exit;
}else{
echo "hat geklappt";
}
fclose($fp2);
}


?>

<form action="tachodanny.php" method="get">
<input type="text" name="text1" value="" />
<input type="submit" name="submit" value="submit" />
</form>


DANKE
Top
PMEmail Poster
Top
 
rosinenbomber-jk
#26 Geschrieben am: Mo 7.01.2008, 20:35 (+00:40)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


die sache ist einfach zu verfahren, ich moechte es nun doch einfacher machen. ich moechte per formular den aktuellen km-stand wegschicken. dieser ergibt wert 1.
und dann moechte ich das sich wert 2 die gefahrenen km im jahr 2008 ergibt. kein durchschnitt und kein runden. einfach nur km ab 1.1.2008. also (gesamt km - 10377 = km in 2008) das reicht mir absolut aus und dann lass ich euch auch endlich in ruhe mit meinem "mist". ich danke vielmals im voraus. gruesse danny
Top
PMEmail Poster
Top
 
Jörg Kruse
#27 Geschrieben am: Mo 7.01.2008, 21:09 (+00:34)
Report PostQuote Post

AyomRank 5
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 409
Mitglied seit: 19.12.2004


QUOTE
leider kommt immer ein falsch errechneter wert. sieht jemand den fehler im code?


Der Code scheint mir in Ordnung zu sein (außer dass NCs Codezeile zum zweiten mal rundet, was aber nicht schadet) Und wenn ich den Code teste und z.B. 210 eingebe, erhalte ich erwartungsgemäß:

QUOTE
&text1=210&text2=&text3=30


Also 30. Was für einen Wert erwartest du als Ergebnis? Oder erhälst du ein anderes Ergebnis?

PS: wenn du 35 als Ergebnis erwartest (weil du die Tage ab- statt aufrunden möchtest), musst du wie gesagt floor() statt ceil() verwenden:

QUOTE (Code)
<?
if($_GET['submit']) {
//pfadangabe der Datei
$pfad = "tachodanny.txt";

//Öffnen der Datei
$fp = fopen($pfad,"r");
$str = fgets($fp,4096);
fclose($fp);


$text3 = (int)($_GET["text1"]  / floor((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));
$text3 = round($text3, 0);

//Text ersetzen
$text = "&text1=". $_GET["text1"] ."&text2=". $_GET["text2"] ."&text3=".$text3;
//Text wieder zurück schreiben

$fp2 = fopen ($pfad,"w+");

if (!fwrite($fp2, $text)) {
echo "Kann in die Datei $pfad nicht schreiben";
exit;
}else{
echo "hat geklappt";
}
fclose($fp2);
}


?>

<form action="tachodanny.php" method="get">
<input type="text" name="text1" value="" />
<input type="submit" name="submit" value="submit" />
</form>


--------------------
Top
PMEmail PosterUsers Website
Top
 
rosinenbomber-jk
#28 Geschrieben am: Mo 7.01.2008, 21:30 (+00:20)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


ja ich wollte ja bisher nicht das er den kompletten wert durch die vergangenen tage im jahr 2008 teilt sondern nur die bisher gefahrenen km in diesem jahr.

aber wie gesagt, ich will es einfacher halten, so wie oben angedeutet. ich will mit dem formular den gesamt zaehler stand abschicken und als zweiten errechneten wert die km im jahr 2008 erhalten. (gesamt km 10377km = km in 2008) das reicht mir absolut aus und die rechnung bzw. formel muesste einfacher sein.

kann mir jemand nochmal den code so umstellen das er mit den zwei werten funktioniert?

wert 1 = durch formular eingebe
wert 2 = errechnet mit obiger formel

10377 ist der km stand seit dem 1.1.2008
Top
PMEmail Poster
Top
 
Jörg Kruse
#29 Geschrieben am: Mo 7.01.2008, 21:37 (+00:07)
Report PostQuote Post

AyomRank 5
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 409
Mitglied seit: 19.12.2004


QUOTE
ja ich wollte ja bisher nicht das er den kompletten wert durch die vergangenen tage im jahr 2008 teilt sondern nur die bisher gefahrenen km in diesem jahr.


Naja, ich wusste ja nicht, was du da eingibst smile.gif - aber das kann man ja noch problemlos integrieren. Wenn du den kompletten Kilometerstand eingibst, kann das Script dir die 10377 wieder abziehen:

CODE
$text3 = (int)(($_GET["text1"] - 10377)  / ceil((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));


... bzw. wenn du die Tage abrunden möchtest:

CODE
$text3 = (int)(($_GET["text1"] - 10377)  / floor((time() - mktime(0, 0, 0, 1, 1, 2008)) / (24 * 60 * 60)));


... und wenn du nur die km als Ergebnis haben möchtest:

CODE
$text3 = $_GET["text1"] - 10377;


--------------------
Top
PMEmail PosterUsers Website
Top
 
rosinenbomber-jk
#30 Geschrieben am: Mo 7.01.2008, 22:53 (+01:15)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


so... super... jetzt laeuft alles bestens!!!
ich bedanke mich vielmals fuer die geduld und muehe dir mir entgegengebracht wurde. ich bin nun sehr froh einen funktionierenden tacho auf meiner homepage zu haben.

ich moechte euch das ergebnis nicht vorenthalten: http://www.rosinenbomber-jk.com/html/fahrradtouren.html

gruesse und grosser danke aus frankfurt - danny
Top
PMEmail Poster
Top
 
rosinenbomber-jk
#31 Geschrieben am: Di 8.01.2008, 06:34 (+07:40)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


jetzt habe ich doch tatsaechlich noch eine bloede frage. ist es moeglich durch ein zweites formularfeld den wert 10377 hochzuladen? es ist zwar der jahreswert den man nur einmal am 1.1. hochladen muss. aber dann muss ich nicht die php datei umbauen.

also im prinzip aus der 10377 eine variable machen, die sich per formularfeld aendern laesst. gibt man nichts ein soll die letzte zahl stehen bleiben! vielen dank fuer die nochmalige hilfe.

gruesse danny
Top
PMEmail Poster
Top
 
Jörg Kruse
#32 Geschrieben am: Di 8.01.2008, 09:58 (+03:23)
Report PostQuote Post

AyomRank 5
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 409
Mitglied seit: 19.12.2004


Probier es mal so:

QUOTE (Code)
<?
if($_GET['submit']) {
//pfadangabe der Datei
$pfad = "tachodanny.txt";

//Öffnen der Datei
$fp = fopen($pfad,"r");
$str = fgets($fp,4096);
fclose($fp);

if ($_GET["text4"] == '') {
    parse_str($str);
} else {
    $text4 = $_GET["text4"];
}

$text3 = $_GET["text1"] - $text4;


//Text ersetzen
$text = "&text1=". $_GET["text1"] ."&text2=". $_GET["text2"] ."&text3=".$text3."&text4=".$text4;
//Text wieder zurück schreiben

$fp2 = fopen ($pfad,"w+");

if (!fwrite($fp2, $text)) {
echo "Kann in die Datei $pfad nicht schreiben";
exit;
}else{
echo "hat geklappt" . $text;
}
fclose($fp2);
}


?>

<form action="tachodanny.php" method="get">
<input type="text" name="text1" value="" />
gesamt: <input type="text" name="text4" value="" />
<input type="submit" name="submit" value="submit" />
</form>


Wichtig: beim ersten Mal muss ein Gesamtwert eingegeben werden. Danach wird dieser (per parse_str()) aus der Textdatei gelesen, wenn nichts eingegeben wird


--------------------
Top
PMEmail PosterUsers Website
Top
 
rosinenbomber-jk
#33 Geschrieben am: Do 10.01.2008, 06:34 (+44:36)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 50
Mitglied seit: 20.01.2007


so, ich moechte an der stelle allen helfern vielmals danken. es ist echt super so viel hilfestellung und hilfe bekommen zu haben. danke das ihr euch die zeit genommen habt mir weiter zu helfen! jetzt funktioniert alles und ich bin uebergluecklich. ich wuensche euch alles gute - danny lettkemann
Top
PMEmail Poster
Top
 
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/22276

Topic Options Seiten: (2) 1 [2]  Reply to this topicStart new topicStart Poll

 


> Ähnliche Themen
Hilfe zum Thema "Kontaktformular" einsteiger 132 9 So 12.10.2008, 08:08
Langfristige Artikelschreiber gesucht RegComp 117 3 So 12.10.2008, 07:48
Feedback und Ideen für kleine Suma gesucht BartTheDevil89 102 2 Sa 11.10.2008, 17:02
Dringend Texter gesucht! selfbusiness 154 3 Sa 11.10.2008, 00:05
Kostenloser Forenhoster gesucht Orpheus 76 3 Fr 10.10.2008, 18:18
CRM Hosting gesucht (sugarcrm) Sandro Feuillet 58 0 Do 9.10.2008, 10:51
Partner für Forum gesucht Thomas G. 269 2 Mi 8.10.2008, 19:05
Linktauschpartner gesucht! Yannick 47 0 Di 7.10.2008, 20:26
Preissponsoren gesucht bendecho 112 2 Di 7.10.2008, 14:09
Coder/Agentur für Videoportal gesucht J. Eibauer 102 1 Mo 6.10.2008, 19:36




Anzeige - [Interessiert an einer Anzeige?]



Anzeigen


[Interessiert an einer Anzeige?]