[PHP & MySQL] PN Script - kann keinen Fehler finden

Stelo
Hat ja alles schon mal funktioniert, aber die Steff macht ja alles kaputt.
Ich hab an der Stelle eigtl. nichts verändert, nur weiter oben, aber jetzt kommt der Fehler. Ich krieg heute irgendwie echt nichts auf die Reihe, aber irgend einen fehler muss man doch finden.
ich hoffe ihr findet ihn! <3 ^^

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
<?php
include ("Admin/config.php");
$nick $_SESSION['nick'];
$sqleingang"SELECT
                  nachricht, absender, datum, empfaenger, ID
            FROM
                  nachrichten
            WHERE
                  empfaenger = '$nick'      
            ";
            
$sqlschreiben"SELECT 
                        nick
                FROM
                        mitglieder
                WHERE
            status = 'freigeschalten'
                  ORDER BY
                  nick ASC";
                          

echo"
<table>
<tr>
<table border=1 bordercolor='#006400' cellspacing=0>
<tr>
<td align=center  bgcolor='#a1b681' >
Neue Nachricht schreiben</td>
</tr>
<form  action='index.php?section=senden' method='post'>
<tr>
<td>
<table>
<tr>
<td>
<textarea name='nachricht' widht='40%'>
</textarea>
</td>
<td>
An:<select name='empfaenger'>";
$ausgebenschreiben mysql_query($sqlschreiben) OR die(mysql_error() );

while($ausgabeschreiben mysql_fetch_assoc($ausgebenschreiben) ) {
echo "<option>".$ausgabeschreiben['nick']."</option>";
}

echo "
</select>
</td>
</tr>
</table>
</td>
</tr>
</table>
<input type='submit' value='Abschicken' />
</form> <br><br><br>
<table border=1 bordercolor='#006400' cellspacing=0>
<tr>
<td align=center  bgcolor='#a1b681'>
Empfangene Nachrichten</td>
</tr>
<tr>
<td>
 ";
$ausgebeneingang mysql_query($sqleingang) OR die(mysql_error() );
$anzahl 0;
while($ausgabeeingang mysql_fetch_assoc($ausgebeneingang) ) {
$anzahl++;
$date $ausgabeeingang['datum'];
$datum date("d.m.y - H:i"$date);
$id $ausgabeeingang['ID'];

echo"<table border=1 bordercolor='#006400' cellspacing=0 width='100%'>
<tr>
<td width='20%'>
<b>".$ausgabeeingang['absender']."</b> schrieb am ".$datum":
</td>
<td >";
echo $ausgabeeingang['nachricht'];
echo " 
<i><a href="index.php?section=nachrichtloeschen&id=$id">(löschen)</a></i>
</td>
</tr>
</table>";
if ($anzahl >= 20) {
die();
}
}

echo "".$anzahl." von 20 Nachrichten  </td> </tr> </table> </table>";
 

?>


Der Fehler:
Zitat:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /usr/export/www/vhosts/funnetwork/hosting/luxurystables/Members/nachrichten
.php on line 78


Zeile 78 ist übrigens:
php:
1:
echo $ausgabeeingang['nachricht'];
Black Katrin
schreib folgendes mal um:

das hier ersetzten durch:
php:
1:
2:
3:
4:
5:
6:
echo"<table border=1 bordercolor='#006400' cellspacing=0 width='100%'>
<tr>
<td width='20%'>
<b>".$ausgabeeingang['absender']."</b> schrieb am ".$datum":
</td>
<td >";


das hier:
php:
1:
2:
3:
4:
5:
6:
echo"<table border=1 bordercolor='#006400' cellspacing=0 width='100%'>
<tr>
<td width='20%'>
<b>".$ausgabeeingang['absender']."</b> schrieb am $datum:
</td>
<td >";
Stelo
Oh vielen Dank, das hat geklappt. ... Hätte nicht gedacht, dass es daran liegt.

Ich hab da aber noch eine andere Frage, am besten ich stell sie auch gleich hier rein:
Und zwar hab ich in der DB ein Datum im Format "YYYY-MM-DD" Nun möchte ich das in ein anderes Format umwandeln. Also geb ich es aus der DB aus und wandel es mit date um. Also so:

php:
1:
2:
$date $ausgabeeingang['datum'];
$datum date("d.m.y - H:i"$date);


Scheint nur irgendwie nicht funktionieren. Denn egal was in der DB steht, es wird immer ausgegeben:
Zitat:
01.01.70


Mach ich nun irgendwas falsch, oder ist es nachträglich nicht mehr möglich das Datum so umzuwandeln und ich müsste es anderes machen?! Also vllt. mit mktime umwandeln und das dann mit date wiede rumwandeln, z.B.?!
Black Katrin
geht nicht Augenzwinkern
wenn dus mit YYYY-MM-DD abspeicherst, kannste es auch nur so auslehsen lassen.
wenn dann muste den time code abspeichern, dann kannste es beliebig auslehsen lassen.
der time code ist jener wo aus 11 Zahlen bestet und vom 1.1.70 anfängt die sekunden zu zählen Augenzwinkern
Black Katrin
was hassu gekont überlesen?großes Grinsen
Stelo
Naja, rein theoretisch kann ich doch aber auch das Datum im Format YYYY-MM-DD mit split () auseinander nehmen und dann mit mktime und dann in diesen .. ähm .. namen vergessen ... Format umwandeln. Und diesen Code dann mit date() in das gewünschte Format.
Ich habs noch nicht probiert, aber eigtl. müsste das doch funktionieren?!
Black Katrin
tja... du hast es so mitm lesen mordredgroßes Grinsen

Stelo, du hast aber nur das datum gespeichert, nti aber die zeit und alles Augenzwinkern
Stelo
Doch doch, die Zeit ist auch gespeichert. Hab ich jetzt nur nicht mit geschrieben! ^^
Ich will ja nur so grob wissen, obs funktionieren WÜRDE. Auch wenns etwas umständlich ist! ^^
Black Katrin
du kannst mit der "schnippsel" funktion das ganze machen.


$datum= substr($date, 0, 3);

gibt dir die ersten 4 Zeichen => das Jahr aus.
machste das mit allen sachen dann kriegste die einzelen raus und kannst sie neu zusammen setzten.
Stelo
Zitat:
Original von Mordred
Warum so umständlich wenn es auch einfach geht? Wenn du sie gespeichert hast kannst du auch date verwenden


Öhm, wenn ich was gespeichert habe?
Hmm ... du meinst sicher das Datum/Zeit als TIMESTAMP, oder?

@Katrin:
Ich könnte es ja aber auch so machen:
php:
1:
2:
3:
$datum "04/30/1973";
list ($monat$tag$jahr) = split('[/.-]'$datum);
echo "Monat: $monat; Tag: $tag; Jahr: $jahr<br />\n";

Das dann natürlich auch noch mit der Zeit.
Also: $stunde $minute und $sekund.
Und dann:
php:
1:
$code date ("d.m.y - H:i:s"mktime($stunde$minute$sekunde$monat$tag$jahr))
Black Katrin
genauAugenzwinkern speichers einfach grundsätzlich in timestap ab dann haste das problem nit
Stelo
Aber warum einfach, wenns auch kompliziert geht?

Ähm.. aber wenn ich es als TIMESTAMP speichern will, dann muss ich es nur in der Datenbank umstellen? Die SQL funktion wäre dann genau so NOW(), oder? ^^ Ich bin heute irgendwie bissl verpeilt! ^^
Black Katrin
wenn du den timestap als datum in der DB speicherst, kannst du es nachher auf beliebige art austragen lasse, ob jetzt nur das datum oder ob nur die sekunde... egal wie Augenzwinkern
wenn du aber schon mit date geschaft hast vor dem abspeichern, also das date gespeichert hast, kanns tdu danach nimmer umschreiben.
Stelo
Naja rein theoretisch müsst eman es noch umschreiben können.. (siehe oben mein edit).

Aber dann werd ich wohl mal alles auf Timestamp umstellen und meiner MB bescheid sagen! smile Danke also ... Augenzwinkern
Black Katrin
klar kannste es ausrechnen lassen...
nur gibt das ne schweinische rechnung kann ich dir jetzt schon sagenAugenzwinkern
Stelo
Ach ich mag Mathe! *__*
Aber gut, ich steig lieber jetzt auf TIMESTEMP um, bevor ich noch mehr umändern muss! xD
Black Katrin
na dann... aber wird schweinisch zu ermitteln seinAugenzwinkern weil dumüsstest den monat noch abfragenw ieviele tag er hatte usw... lieber timestap
.|. Chancenlos .|.
Warum schwierig wenn es so einfach geht?

Sehr gutes Tutorial

Allerdings empfehle ich valides XHTML und CSS zu beherrschen...
Black Katrin
der fehler is ja jetzt behoben oder?Augenzwinkern
Stelo
Zitat:
Original von Black Katrin
der fehler is ja jetzt behoben oder?Augenzwinkern


Jup, sagte ich ja schon! großes Grinsen

@Chancenlos: öhm .. ich kenn diese Seite und was genau wolltest du mir damit jetzt sagen?
Das ich kein PHP kann? O.o