ich bin gerade dabei ein Gästebuch Script zu schreiben. Das Gästebuch wird in einer MySQL-Tabelle abgelegt. Alles klappt wunderbar, blos habe ich ein Problem.
Nachdem ein neuer Eintrag geschrieben wurde, möchte ich per Mail benachrichtigt werden.
Meine PHP-Datei ist so aufgebaut:
Überprüfen, ob es sich um ein Submit handelt {
Eintrag prüfen (Antispam, Name aufgefüllt usw)
Eintrag in Datenbank speichern
Alert-Mail absenden
}
Wird immer durchgeführt:
Gästebuch aus MySQL-Tabelle laden und darstellen.
---
Es funktioniert wie gesagt alles vom feinsten, solange ich diese Zeile weglasse:
@mail ("*******", "Guestbook ".date("Y-m-d"), $alert);
Bleibt die Zeile stehen erhalte ich abwechselnd diese beiden Fehler:
"Lost connection to MySQL server during query"
"MySQL server has gone away"
Die Einträge werden allerdings trotzdem gespeichert blos die anschließende Ausgabe schlägt fehl.
Ob der Mail-Versand funktioniert habe ich noch nicht getestet, da ich es auf meinem Home-Server teste, der eine dynamische IP hat und die großen Hoster ja bekanntlich keine Mail von diesen akzeptieren.
Sollte ich den Mailversand vielleicht als Funktion schreiben und erst durchführen, nachdem die Datenbankverbindung geschlossen wurde?
Gruß, Alex
EDIT:
Also wenn ich es ganz ans Ende stelle (also so:
mysql_close($database); @mail ("*******", "Guestbook ".date("Y-m-d"), $alert);)
dann geht es, warum auch immer. Ist für mich aber nicht die wahre Lösung, vielleicht kann mir noch jemand sagen, wo mein Fehler liegt.
Dieser Beitrag wurde von mush bearbeitet: 01. April 2008 - 09:58