php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.02.2007, 03:11  
Benutzer
 
Registriert seit: 08.03.2006
Beiträge: 77
Cheesy
Standard Funktion nacheinander ausführen

Hallo,
ich habe ein Problem mit Funktionen. Ich möchte gern eine Funktion nacheinander ausführen. Ich übergebe dieser Funktion nur andere Werte.
Nachfolgend das Script:

<?php

$data1= date("d.m.Y", mktime(1,1,1,date(m),date(d)-1,date(Y)));
$data2= date("d.m.Y", mktime(1,1,1,date(m),date(d)-2,date(Y)));

//Datenbankverbindung
include_once('connection.php');

//Funktion
include_once('sorter.php');

$sorter1 = sorter($data1);
$sorter2 = sorter($data2);

$sorter = ($sorter1 + $sorter2) / 2;

echo $sorter;
?>

Wenn ich eine Funktion auskommentiere Funktioniert es (egal welche!)!

Ich stehe vor einem Rätsel.

Kann mir vielleicht einer weiterhelfen?
Cheesy ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.02.2007, 07:41  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Wenn Du uns noch verraten könntest, was "funktionieren" bedeutet, könnte vielleicht mal jemand helfen.

Ich sehe hier gar keine Funktionen, die Du auskommentieren könntest. Da sind nur Aufrufe von Funktionen.

Ich nehme mal an, Du meinst eigentlich nicht "egal welche Funktion", sondern "egal welchen Aufruf der Funktion sorter". An date() und mktime() wird es ja wohl kaum liegen.

Ohne Kenntnis der Funktion sorter() wird es auch schwierig, was zu sagen, was nicht einfach nur dumm in die Landschaft rein geraten ist.

Du muss schon bissel was bieten.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 20.02.2007, 10:19  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Du kannst $data1 und $data2 auch einfacher und offensichtlicher definineren:
PHP-Code:
<?php
$data1 
date('d.m.Y'strtotime("-1 month"));
?>
Zergling-new ist offline  
Alt 20.02.2007, 12:21  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Was soll eigentlich der Unfug bei date()?
PHP-Code:
<?
date
(m),date(d)-1,date(Y)
?>
Will date bei Dir nicht Strings als Argumente haben?
Wenn Du mal error_reporting(E_ALL) an den Anfang des Scripts setzen wuerdest, duerftest Du einen Berg an Warnings kriegen.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 20.02.2007, 14:29  
Benutzer
 
Registriert seit: 08.03.2006
Beiträge: 77
Cheesy
Standard

Entschuldigung!

Ich rufe zwei Funktionen auf, die mir einen Gesamtwert berechnen sollen. Mit $data1 und $data2 übergebe ich jediglich ein Datumswert, den ich für das sql-statement benötige.

Nun kommentiere ich einen Funktionsaufruf aus. Das Ergebnis, welches ich bekomme ist I.O.

Wenn beide Funktionsaufrufe ausgeführt werden stimmt das Ergebnis nicht mehr!
Cheesy ist offline  
Alt 20.02.2007, 14:58  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

WELCHE Funktion kommentierst du aus? Und WAS steht in der Funktion? Du gibst uns hier viel zu wenig Infos damit wir wissen was du überhaupt willst. Sag uns doch mal was für zwei $data1/2 du hast also was das überhaupt ist und was du dann damit machen willst. Und wie deine Lösung aussehen soll UND wie sie in Wirklichkeit aussieht.
Flor1an ist offline  
Alt 20.02.2007, 15:09  
Benutzer
 
Registriert seit: 08.03.2006
Beiträge: 77
Cheesy
Standard

Mit $data1 und $data2 übergebe ich der Funktion einen Datumswert. Den von gestern und von vorgestern.
In der Funktion (die ich leider jetzt nicht vorliegen habe) wird mir eine Gesamtdauer errechnet, die anhand des übergebenen Datums berechnet wird. Die Funktion ist soweit in Ordnung. Wenn ich die Funktion nur einmal aufrufe, egal mit welchem übergebenen Datum, bekomme ich den richtigen Wert zurück. Sowie ich die Funktion 2 X aufrufe, mit unterschiedlichen Datumswerten, stimmt das Ergebnis nicht mehr.

Ich bekomme aus der Funktion einen Integer Wert zurück, der in eine Grafik, als Graph, eingebunden werden soll.

Das mit dem Graph ist i.O. daran kann es nicht liegen.
Cheesy ist offline  
Alt 20.02.2007, 15:13  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Also wenn du die Dauer zwischen zwei Timestamps berechnen willst brauchst du den Betrag von der Differenz beider Timestamps. Sie zu addieren und dann durch 2 zu teilen gibt dir nur den Mittelwert beider Timestamps zurück. Und was steht in sorter() drinnen? Da liegt doch wohl der Fehler! Wie sollen wir den Fehler finden wenn uns der Quellcode fehlt.
Flor1an ist offline  
Alt 20.02.2007, 15:20  
Benutzer
 
Registriert seit: 08.03.2006
Beiträge: 77
Cheesy
Standard

Ich komme an den Quellcode erst heute abend gegen 23.00 Uhr wieder ran!!!

Ich werde den Quellcode heute abend mal posten. Ich hoffe dann kannst DU / Ihr mir weiterhelfen. Bis heute abend.
Cheesy ist offline  
Alt 20.02.2007, 22:24  
Benutzer
 
Registriert seit: 08.03.2006
Beiträge: 77
Cheesy
Standard

Hier ist der Quellcode der Funktion sorter()


<?php
function sorter($tag)
{
//Gesamtzeit SORTER
$gesamt_dauer=0;
include_once ("../include/variablen/tag_in_sekunden.php");
include_once ("../include/sql/select_sorter.php");

$gesamt_dauer=0;
$stunden=0;
$minuten=0;
$sekunden=0;

while($row=mysql_fetch_array($sql)) //solange er Datensätze findet
{

//TIME-Feld "zerlegen"
$temp_array = explode(":", $row[dauer]);

$stunden+=$temp_array[0];
$minuten+=$temp_array[1];
$sekunden+=$temp_array[2];
}

$sekunden=$sekunden/60;
$int_sek=$sekunden;
settype($int_sek,"integer");

$minuten=($minuten + $int_sek)/60;
$int_min=$minuten;
settype($int_min,"integer");

$stunden=$stunden+$int_min;

$sekunden=($sekunden-$int_sek)*60;
$sekunden= round($sekunden, 0);

$minuten=($minuten-$int_min)*60;
$minuten= round($minuten, 0);

$stamp=mktime($stunden,$minuten,$sekunden,0,0,0);

$stunden_sek= $stunden*60;
$stunden_min_sek=($stunden_sek+$minuten)*60;

$gesamt_sekunden= $stunden_min_sek + $sekunden;
$gewichtet = $gesamt_sekunden * 0.5;
$gesamt_dauer_minus= $tag_in_sek - $gewichtet;
$gesamt_dauer_in_prozent = ($gesamt_dauer_minus * 100)/$tag_in_sek;
$gesamte_av = round($gesamt_dauer_in_prozent, 2);

$wert = $gesamte_av;

return $wert;
}
?>
Cheesy ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
Rekursive Funktion bricht ab... duras666 PHP Tipps 2008 9 28.04.2008 11:36
gpc_quotes funktion: verbesserungsvorschläge? Promaetheus PHP Tipps 2007 10 12.08.2007 19:29
Komplexe Funktion: +Übersichtlichkeit, -Performance Jacks Rache PHP Tipps 2006 3 07.06.2006 14:22
Array in rekursiver Funktion auslesen Gumfuzi PHP Tipps 2007 17 15.11.2005 12:01
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
Rückgabewert einer rekrusiven Funktion PHP-Fortgeschrittene 7 06.10.2005 18:44
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
In einer Funktion auf eine Funktion der Klasse zugreifen phpbeginner PHP Tipps 2005-2 2 28.07.2005 00:30
Funktion in einer Funktion aufrufen? PHP Tipps 2005-2 11 14.06.2005 15:14
[Erledigt] Array-Übergabe in Funktion PHP Tipps 2005 1 08.05.2005 21:05
[Erledigt] Wie kann ich beliebig viele Werte an eine Funktion übergeben PHP Tipps 2005 11 25.01.2005 10:44
[Erledigt] Funktion in funktion nicht möglich? PHP-Fortgeschrittene 4 28.11.2004 00:14
[Erledigt] sql syntax error in funktion, kann aber nix finden :( PHP Tipps 2004 10 20.07.2004 19:19
[Erledigt] Referenz auf Funktion übergeben PHP-Fortgeschrittene 7 20.07.2004 09:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
funktionen nacheinander ausführen, php funktionen nacheinander, php funktionen nacheinander aufrufen, funktionen hintereinander ausführen, php funktionen hintereinander, 2. php function nacheiander ausführen, php mehrere funktionen hintereinander aufrufen, php mehrere funktionen hintereinander, zwei funktionen nacheinander ausführen javascript, php nacheinander ausführen, funktion hintereinander php, php aktionen nacheinander ausführen, php scripte nacheinander ausführen, zwei funktionen hintereinander ausführen, javascript 2 funktionen nacheinander ausführen, funktionen nacheinander aufrufen, hintereinander ausführen funktionen, php file nacheinander ausführen, mehrere funktionen nacheinander abarbeiten javascript, mehrere phpscripte hintereinander aufrufen

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.