Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Problem mit DATE_FORMAT [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Problem mit DATE_FORMAT


 
DER*PATE
03-04-2004, 20:23 
 
Hi ich habe gerade ein Problem
ich geb ein

SELECT DATE_FORMAT( "2004 -03 - 31 18 :03 :52", "%d.%m.%y %H:%i%s" ) AS Datum
FROM `news`

Die Daten hole ich aus dem "Datum" Spalt.

Jetzt klappt es auch mit der Ausgabe, nur gibt er was ganz anderes aus.
Er gibt immer nur den Wert "NULL" aus.

Weiß einer was ich falsch mache?

 
TobiaZ
03-04-2004, 23:03 
 
Du brauchst ein paar weniger leerzeichen im ersten parameter ;)

 
DER*PATE
04-04-2004, 10:51 
 
moin

danke ich hatte bei der eingabe eigentlich nicht soviele leerzeichen :dontknow:

ok jetzt komme ich aber nicht weiter

$result = mysql_query("
SELECT
ID,
Autor,
Titel,
Inhalt,
DATE_FORMAT("was soll hier rein", "%d.%m.%y %H:%i:%s") AS Datum
FROM news"

ich habe eine Schleife und was soll ich jetzt oben als datum angeben
hatte schon mit $daten[Datum], aber es hat natürlich nicht geklappt

 
TobiaZ
04-04-2004, 10:55 
 
da muss der spaltenname rein!

 
wahsaga
04-04-2004, 10:57 
 
Original geschrieben von DER*PATE
DATE_FORMAT("was soll hier rein", "%d.%m.%y %H:%i:%s") AS Datum
wie wär's mit dem namen deiner datums-spalte - denn die beinhaltet doch wohl den wert, den du formatieren willst, oder ...?

 
DER*PATE
04-04-2004, 10:58 
 
das hatte ich schon ausprobiert:
DATE_FORMAT("Datum", "%d.%m.%y %H:%i:%s") AS Datum

aber dann zeigt er mir noch immer das Datum so an 2004-03-31 18:03:52

 
TobiaZ
04-04-2004, 11:17 
 
wenn die spalte ein datetime ist und einen korrekten wert hat, mit sicherheit nicht.

poste mal den kompletten query, wie er an die db gesendet wird?

 
DER*PATE
04-04-2004, 11:20 
 
<?
$db = mysql_connect("+++","++++","++++");
mysql_select_db("DB",$db);

$result = mysql_query("
SELECT
ID,
Autor,
Titel,
Inhalt,
DATE_FORMAT("Datum", "%d.%m.%y %H:%i:%s") AS Datum
FROM news",$db);

while ($daten = mysql_fetch_array($result))
{
$text=str_replace(":rolleyes:","<img src=\"lol.gif\">",$daten[Inhalt]);
?>
<br>
<table border="1" width="644">
<tr>
<td width="174">
<p>ID:</p>
</td>
<td width="454">
<p>
<? echo $daten[ID]; ?>
</p>
</td>
</tr>
<tr>
<td width="174" height="132">
<p>Text:</p>
</td>
<td width="454" height="132">
<p>
<? echo nl2br($text); ?>
</p>
</td>
</tr>
<tr>
<td width="174" height="41">
<p>Datum</p>
</td>
<td width="454" height="41">
<p><? echo $daten[Datum]; ?>
.........


hoffe du kannst mir helfen

[EDIT]
Hatte das mal in die Datenbank eingegeben und dann hat er mir bei DAtum immer nur NULL wiedergegeben
SELECT ID, Autor, Titel, Inhalt, DATE_FORMAT("Datum", "%d.%m.%y %H:%i:%s") AS Datum FROM news

 
wahsaga
04-04-2004, 11:28 
 
Original geschrieben von DER*PATE
Hatte das mal in die Datenbank eingegeben und dann hat er mir bei DAtum immer nur NULL wiedergegeben
leute, lernt doch bitte endlich mal, dass es ein unterschied ist, einen string oder einen feldnamen zu übergeben!

"Datum" ist keine gültige datumsangabe - oder kannst du darin irgendwo angaben zu tagen, monaten, jahren entdecken? ich nicht.
also kann da auch nichts vernünftiges bei rauskommen - wenn du NICHTS formatierst, bleibt es trotzdem NICHTS.
aber da du es als string schreibst, ist damit ja eine feste datumsangabe gemeint, und nicht etwa eine datenbankspalte ... die würde nämlich mit Datum angesprochen.

DATE_FORMAT(Datum, "%d.%m.%y %H:%i:%s") AS Datum

 
DER*PATE
04-04-2004, 17:45 
 
hi hab es jetzt so gemacht wie du es gesagt hast, wenn ich die abfrage in myphpadmin mache dann geht alles, aber wenn ich die seite aufmache, dann kommt der fehler:
Parse error: parse error in /local/var/www/133/2086/www/zeigen.php on line 23

und hier ist line 23: DATE_FORMAT(Datum, "%d.%m.%y %H:%i:%s") AS Datum

ich weiß mal wieder nicht was da ist:dontknow:

 
TobiaZ
04-04-2004, 18:58 
 
ist irgendlwie logisch, oder?

du fängst den string an (") und hörst ihn auf (") schreibst aber weiter text und fängst wieder an (") und hörst wieder auf (").

 
DER*PATE
04-04-2004, 21:34 
 
großen dank tobiaz

ich mach noch die anfänger fehler :)

hab jetzt noch ne frage zur anordnung
hab jetzt DATE_FORMAT(Datum, '%d.%m.%y %H:%i:%s') AS Datum FROM news ORDER BY Datum DESC
und er gibt mir:
31.03.04 23:30:00
31.03.04 23:00:00
31.03.04 18:03:52
25.12.03 09:10:58
10.10.01 23:05:00
04.12.31 18:03:52
04.04.04 21:22:05
04.03.31 00:00:00
nach dem punk überlegt er nicht mehr weiter. kann man nichts machen??

 
wahsaga
04-04-2004, 21:57 
 
Original geschrieben von DER*PATE
nach dem punk überlegt er nicht mehr weiter. kann man nichts machen??
wer is'n punk, und was willst du uns sagen ...?

 
mrhappiness
04-04-2004, 21:59 
 
wo is denn da dein problem?

stimmen die werte nicht oder gefällt dir die sortierung nicht?

 
DER*PATE
04-04-2004, 22:25 
 
sry meinte Punkt

ja es sollte das aktuelste ganz oben sein und dann absteigend runtergehen aber er macht es nicht

 
mrhappiness
04-04-2004, 22:27 
 
mach aus AS Datum mal AS MeinDatum

 
asp2php
04-04-2004, 22:45 
 
zu ursprünglichen Problem: (hier: formatstring von date_format)
IMHO akzeptiert der SQL-Server keine Stringangabe zwischen " sonder
immer mit ', zumindest bei MS-SQL ist es so, MySQL :dontknow: ;)

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:47 Uhr.