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
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
29.05.2007, 16:54:53
|
|
Anfänger
|
|
Registriert seit: Oct 2006
Ort: Bonn
Alter: 49
Beiträge: 79
|
|
Formatierung aus SQL
Hallo zusammen,
ich verzweifele hier an einer Konvertierung von SQL in PHP...
hier die SQL Abfrage:
PHP-Code:
select distinct
C.row
, C.row2
, (select count(*) from table_1
where C.rowname = rowname
and cast(calldate as smalldatetime) between @StartDate and @EndDate
and (len(endcode) > 0)
) as Brutto
, replace(cast(round(100.0 * (select count(*) from table_1
where C.rowname = rowname
and cast(calldate as smalldatetime) between @StartDate and @EndDate
and endcode = '11'
and status = 'U'
) /
(select count(*) from table_1
where C.rowname = rowname
and cast(calldate as smalldatetime) between @StartDate and @EndDate
and endcode = '22'
and (C.kein_interesse between 29 and 64 or C.kein_interesse = 16)
),1) as varchar),'.',',') as Netto
from
table_1
where
cast(C.calldate as smalldatetime) between @StartDate and @EndDate
and (select count(*) from table_1
where C.rowname = rowname
and cast(calldate as smalldatetime) between @StartDate and @EndDate
and endcode = '22'
and (C.kein_interesse between 29 and 64 or C.kein_interesse = 16)
) > 0
order by C.rowname
In PHP sieht das dann so aus:
PHP-Code:
$Netto = number_format(odbc_result($rs,"Netto"), 1, ',', ' ');
Ergebnis $Netto über SQL Server Management Studio: 33,300000000000
Ergebnis $Netto über die PHP Seite: 33,00
Habt Ihr eine Idee was ich da falsch mache?!
Danke und Gruß
__________________
--
Es gibt drei Möglichkeiten, eine Firma zu ruinieren: mit Frauen, das ist das Angenehmste; mit Spielen, das ist das Schnellste; mit Computern, das ist das Sicherste. Oswald Dreyer-Eimbcke
Geändert von lusitaz (29.05.2007 um 20:05:07 Uhr)
|
29.05.2007, 19:34:22
|
Junior Member
|
|
Registriert seit: Oct 2002
Ort: Titting
Alter: 39
Beiträge: 251
|
|
AW: Formatierung aus SQL
Hallo,
PHP-Code:
$Netto = number_format(odbc_result($rs,"Netto"), 1, ',', ' ');
was mich wundert ist das du mit dieser Formatierung zwei Nachkommastellen hast!
Wie sieht denn deine Ausgabe ohne Formatierung aus?
PHP-Code:
echo odbc_result($rs, "Netto");
mfg stephan
__________________
Affen benutzen oft Stöckchen als Hilfsmittel...
|
29.05.2007, 20:03:13
|
|
Anfänger
|
|
Registriert seit: Oct 2006
Ort: Bonn
Alter: 49
Beiträge: 79
|
|
AW: Formatierung aus SQL
sorry, hatte mich vertippt.
Das Ergebnis hieraus
PHP-Code:
$Netto = number_format(odbc_result($rs,"Netto"), 1, ',', ' ');
ist 33,0
und ich rufe $Netto so auf
PHP-Code:
echo "<td align='right' id='td'>$Netto</td>";
Ohne Formatierung ist das Ergebnis 33,300000000000
__________________
--
Es gibt drei Möglichkeiten, eine Firma zu ruinieren: mit Frauen, das ist das Angenehmste; mit Spielen, das ist das Schnellste; mit Computern, das ist das Sicherste. Oswald Dreyer-Eimbcke
Geändert von lusitaz (29.05.2007 um 20:09:59 Uhr)
|
29.05.2007, 20:24:23
|
Junior Member
|
|
Registriert seit: Oct 2002
Ort: Titting
Alter: 39
Beiträge: 251
|
|
AW: Formatierung aus SQL
hab grad nix zum probieren aber was passiert denn wenn du dem number_format eine 33.300000000000 übergibst?
stephan
__________________
Affen benutzen oft Stöckchen als Hilfsmittel...
|
29.05.2007, 21:47:24
|
|
Anfänger
|
|
Registriert seit: Oct 2006
Ort: Bonn
Alter: 49
Beiträge: 79
|
|
AW: Formatierung aus SQL
dann bekomme ich 33,3 als ergebnis. merkwürdig... das würde bedeuten im sql statement wäre der fehler, oder?! ich kann aber leider nichts finden!?
__________________
--
Es gibt drei Möglichkeiten, eine Firma zu ruinieren: mit Frauen, das ist das Angenehmste; mit Spielen, das ist das Schnellste; mit Computern, das ist das Sicherste. Oswald Dreyer-Eimbcke
|
30.05.2007, 02:14:27
|
Junior Member
|
|
Registriert seit: Oct 2002
Ort: Titting
Alter: 39
Beiträge: 251
|
|
AW: Formatierung aus SQL
hi
vielleicht aktzeptiert number_format kein komma als dezimal trennzeichen in der eingabe?
dein sql ist etwas zu hoch für mich!
was machst du in der zeile vor FROM definierst du das das format für Netto?
PHP-Code:
),1) as varchar),'.',',') as Netto
dann könntest du das da ändern!?
stephan
__________________
Affen benutzen oft Stöckchen als Hilfsmittel...
Geändert von langwebdesign (30.05.2007 um 02:34:16 Uhr)
|
31.05.2007, 10:26:32
|
|
Anfänger
|
|
Registriert seit: Oct 2006
Ort: Bonn
Alter: 49
Beiträge: 79
|
|
AW: Formatierung aus SQL
sooo... problem hat sich erledigt. ich habe die sql anweisung so angepasst dass die formatierung in php erfolgt und nicht mehr in der anweisung selbst. ist so einfacher und übersichtlicher.
danke trotzdem für deine mühe :)
__________________
--
Es gibt drei Möglichkeiten, eine Firma zu ruinieren: mit Frauen, das ist das Angenehmste; mit Spielen, das ist das Schnellste; mit Computern, das ist das Sicherste. Oswald Dreyer-Eimbcke
|
31.05.2007, 11:08:41
|
|
Member
|
|
Registriert seit: Jul 2006
Ort: Göttingen/Deutschland
Alter: 35
Beiträge: 586
|
|
AW: Formatierung aus SQL
Noch dazu akzeptiert number_format() garkeine dezimalstellen, sondern formatiert eine Zahl mit Tausender-Gruppierung, die wiederum durch Kommas getrennt sind. Deshalb deine Fehler!
Siehe auch:
http://www.php.net/number_format
MfG,Andy
|
31.05.2007, 15:17:40
|
Junior Member
|
|
Registriert seit: Oct 2002
Ort: Titting
Alter: 39
Beiträge: 251
|
|
AW: Formatierung aus SQL
Das glaub ich aber nicht!
Zitat:
Wenn alle vier Parameter übergeben wurden, wird number als Zahl formatiert, die decimals Dezimalstellen hat, die mittels dec_point anstelle des Punktes (".") von der Zahl getrennt werden, und deren Tausenderstellen mittels thousands_sep anstelle des Kommas (",") gruppiert werden.
|
PHP-Code:
<?php
$number = 1234.56;
// Englische Notation (Standard)
$english_format_number = number_format($number);
// 1,235
// Franzoesische Notation
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
$number = 1234.5678;
// Englische Notation ohne Tausendergruppierung
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>
Steht auf der von dir genanten Seite....
Die Funktion mag es bloss nicht wenn man die Dezimalstelle mit einem Komma übergibt.
stephan
__________________
Affen benutzen oft Stöckchen als Hilfsmittel...
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 09:17:35 Uhr.
|