1 <?xml version=
"1.0" encoding=
"iso-8859-1" ?>
2 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <html xmlns=
"http://www.w3.org/1999/xhtml">
7 <title>Versionshistorie
</title>
8 <meta name=
"author" content=
"Patrick Canterino" />
9 <style type=
"text/css">
11 a:link, a:visited, a:active, a:focus
14 text-decoration: none;
18 a:link:hover, a:visited:hover, a:active:hover, a:focus:hover
21 text-decoration: underline;
27 font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
30 background-color: #FFFFFF;
34 font-family: 'Courier New', Courier, monospace;
71 <body bgcolor=
"#FFFFFF" text=
"#000000" link=
"#0000FF" vlink=
"#0000FF" alink=
"#0000FF">
73 <h1>Versionshistorie
</h1>
75 <p><b>Neu in Version
3.5</b> (vom xx.xx
.201x)
</p>
78 <li><b>Zusammenfassung:
</b><br />
82 <p><b>Neu in Version
3.4.1</b> (vom
27.2.2011)
</p>
85 <li><b>Captcha-Probleme bei aktiviertem
<code>register_globals
</code>:
</b><br />
86 Bei aktiviertem
<code>register_globals
</code> war der Captcha-Schutz nutzlos. Es wurde jeder Wert akzeptiert. Danke an Stefan K
örner f
ür den Hinweis!
</li>
87 <li><b>Beispiel-Formular:
</b><br />
88 Es wurde eine Datei beigelegt, die ein Beispiel-Formular zur Nutzung mit
<i>Form E-Mail
</i> darstellt.
</li>
91 <p><b>Neu in Version
3.4</b> (vom
25.1.2009)
</p>
94 <li><b>Captchas:
</b><br />
95 Es ist nun m
öglich, im Mail-Formular sog.
<a href=
"http://de.wikipedia.org/wiki/CAPTCHA">Captchas
</a> anzuzeigen. Es handelt sich hierbei um einen zuf
älligen Text in einem Bild, der in ein Formularfeld eingegeben werden muss, um das Formular zu versenden.
</li>
96 <li><b>Copyright und Lizenz:
</b><br />
97 Im Kopf der PHP-Dateien befindet sich nun eine Copyright-Angabe sowie ein Hinweis, dass f
ür
<i>Form E-Mail
</i> die Artistic License
1.0 gilt.
</li>
100 <p><b>Neu in Version
3.3a
</b> (vom
14.4.2007)
</p>
103 <li><b><code>date_default_timezone_set()
</code> unter PHP
4:
</b><br />
104 Unter PHP
4 existiert
<code>date_default_timezone_set()
</code> nicht, weshalb
<i>Form E-Mail
</i> dort nicht lauff
ähig war. Jetzt wird vor der Anwendung dieser Funktion gepr
üft, ob sie auch existiert.
</li>
107 <p><b>Neu in Version
3.3</b> (vom
11.4.2007)
</p>
110 <li><b>Umgebungsvariablen im Mailtext:
</b><br />
111 Man kann jetzt Server-Umgebungsvariablen im Mailtext unterbringen. Welche Variablen das sein d
ürfen, l
ässt sich über das neue Konfigurations-Array
<code>$allowed_envs
</code> festlegen. In der Mail-Template kann man dann Variablen unterbringen, die mit
<code>ENV_
</code> beginnen und dann durch die entsprechende Umgebungsvariable ersetzt werden.
</li>
112 <li><b>Zeichensatz konfigurierbar:
</b><br />
113 Der Zeichensatz, mit dem die Mails codiert werden, kan nnun durch die neue Konfigurationsvaraible
<code>$charset
</code> eingestellt werden.
</li>
114 <li><b>Zeitzonen konfigurierbar:
</b><br />
115 Neuere Versionen von PHP geben immer (bei entsprechender Einstellung zumindest) eine Fehlermeldung aus, wenn keine Standard-Zeitzone definiert wurde.
<i>Form E-Mail
</i> definiert jetzt als Standard-Zeitzone
<tt>Europe/Berlin
</tt>, das l
ässt sich aber durch die neue Konfigurationsvariable
<code>$timezone
</code> beliebig anpassen.
</li>
116 <li><b>Template-Klasse aktualisiert:
</b><br />
117 Die
<a href=
"http://www.patshaping.de/redirector/redirect.php?page=template-class" target=
"_blank">Template-Klasse
</a> wurde auf die aktuelle Version
2.0 aktualisiert. Von den neuen Methoden wird Gebrauch gemacht.
</li>
118 <li><b><i>patShaping
</i> gestrichen:
</b><br />
119 Im Mailheader und in den Kopfkommentaren der Scripts steht jetzt nur noch
<i>Form E-Mail
</i>, das Wort
<i>patShaping
</i> wurde entfernt.
</li>
122 <p><b>Neu in Version
3.2.2</b> (vom
9.6.2006)
</p>
125 <li><b>Zeilenumbr
üche ersetzen:
</b><br />
126 S
ämtliche Zeilenumbr
üche im Header und im Text der E-Mail werden nun durch die Zeilenumbruchsfolge des Betriebssystems ersetzt, um Anzeigeprobleme in manchen E-Mail-Programmen (z.B. bei
<i>The Bat!
</i>) zu beheben (eigentlich sind es keine Probleme, die Zeilenumbr
üche werden so dargestellt, wie das Programm sie zu Gesicht bekommt).
</li>
127 <li><b>Anderer Statuscode bei Redirect nach Versand:
</b><br />
128 Wenn nach dem Versand einer E-Mail ein Redirect ausgel
öst werden soll, wird nun der Status-Code
<tt>303</tt> an den Client zur
ückgegeben, damit dieser mit
<tt>GET
</tt> auf die URL zugreift.
</li>
129 <li><b><code>{}
</code> vs.
<code>[]
</code>:
</b><br />
130 Eigentlich planten ja die PHP-Entwickler, dass man mit
<code>{}
</code> auf einzelne Zeichen einer Zeichenkette zugreifen kann und
<code>[]
</code> nicht mehr verwendet werden soll. Da das aber keiner gemacht hat, soll
<code>{}
</code> in PHP
6 wieder rausfliegen (siehe
<a href=
"http://www.php.net/~derick/meeting-notes.html#cleanup-for-vs" target=
"_blank">http://www.php.net/~derick/meeting-notes.html#cleanup-for-vs
</a>) und man soll wieder
<code>[]
</code>.
<i>Form E-Mail
</i> wurde entsprechend angepasst, die
Änderung nach
<code>{}
</code> war ohnehin unvollst
ändig.
</li>
133 <p><b>Neu in Version
3.2.1</b> (vom
18.6.2005)
</p>
136 <li><b>Keine
"Notices
" mehr:
</b><br />
137 <i>Form E-Mail
</i> sollte nun auch ordnungsgem
äß funktionieren, wenn f
ür
<code>error_reporting
</code> der Wert
<code>E_ALL
</code> eingestellt wurde.
</li>
138 <li><b>Template-Klasse aktualisiert:
</b><br />
139 Die
<a href=
"http://www.patshaping.de/redirector/redirect.php?page=template-class" target=
"_blank">Template-Klasse
</a> wurde auf Version
1.5a aktualisiert.
</li>
140 <li><b>Verschiedene
Änderungen:
</b><br />
141 Es wurden verschiedene kleine
Änderungen durchgef
ührt:
143 <li>Die Funktion
<code>sizeof()
</code> wurde durch
<code>count()
</code> ersetzt.
<code>sizeof()
</code> ist n
ämlich ein Alias -
und von der Verwendung von Aliasen wird abgeraten.
</li>
144 <li>PHP bietet aus Gr
ünden der Abw
ärtskompatibilit
ät an, auf einzelne Zeichen einer Zeichenkette wie auf die Elemente eines Arrays zuzugreifen. Das wird jetzt nicht mehr gemacht, stattdessen wird die moderne Variante mit geschweiften Klammern verwendet.
</li>
145 <li>Wo es angebracht war, wurden doppelte Anf
ührungszeichen durch einfache ersetzt.
</li>
150 <p><b>Neu in Version
3.2</b> (vom
29.8.2004)
</p>
153 <li><b>Redirect nach Versand:
</b><br />
154 <i>Form E-Mail
</i> l
ässt sich jetzt wahlweise so einstellen, dass es nach dem Versand der Mail per HTTP-Redirect auf eine andere Seite umleitet.
<br />
155 <b style=
"color:#FF0000">Achtung:
</b> Ich habe zwar etwas eingebaut, was hier relative URLs in absolute umwandelt, um dem HTTP-Standard gerecht zu werden, aber ich garantiere nicht, dass diese Umwandlung immer einwandfrei funktioniert. Seien Sie bei relativen URLs also sehr vorsichtig und verwenden Sie im Fehlerfall absolute.
</li>
156 <li><b>Maximall
ängen:
</b><br />
157 Zus
ätzlich zu den Mindestl
ängen aus Version
3.1 lassen sich f
ür Name, Betreff und Text auch Maximall
ängen angeben.
</li>
158 <li><b>Absender-Adressen ohne Top-Level-Domain:
</b><br />
159 Wenn man die neue Option
<code>$no_tld
</code> auf
"1" setzt, kann man nun als Absender auch eine E-Mail-Adresse angeben, die keine Top-Level-Domain hat.
</li>
160 <li><b>Konfiguration abgespalten:
</b><br />
161 Die Konfigurationsvariablen wurden in die Datei
<i>config.php
</i> ausgelagert, was f
ür etwas mehr
Übersicht sorgt.
</li>
162 <li><b>Template-Klasse aktualisiert:
</b><br />
163 Die
<a href=
"http://www.patshaping.de/redirector/redirect.php?page=template-class" target=
"_blank">Template-Klasse
</a> wurde auf die aktuelle Version
1.3 aktualisiert.
</li>
164 <li><b>Kleine Korrekturen:
</b><br />
165 Am Quelltext wurden kleinere Korrekturen vorgenommen.
</li>
168 <p><b>Neu in Version
3.1</b> (vom
20.1.2004)
</p>
171 <li><b>Immer noch Bug in E-Mail-Adressen-
Überpr
üfung:
</b><br />
172 Der regul
äre Ausdruck, der die E-Mail-Adressen auf syntaktische G
ültigkeit
überpr
üft, war immer noch fehlerhaft. Es gab immer noch E-Mail-Adressen, die das Script
überlasten konnten.
</li>
173 <li><b>Mindestl
ängen:
</b><br />
174 Es ist jetzt m
öglich, f
ür Name, Betreff und Text Mindestl
ängen anzugeben.
</li>
175 <li><b>Alias-Empf
änger:
</b><br />
176 Es ist nun m
öglich,
über die Formulardaten einen einer oder mehreren Adressen zugeordneten Wert an
<i>Form E-Mail
</i> zu
übergeben. An die dem Wert zugeordneten Adressen wird die Mail dann gesendet.
</li>
177 <li><b>Template-Klasse:
</b><br />
178 <i>Form E-Mail
</i> verwendet nun auch die
<a href=
"http://www.patshaping.de/redirector/redirect.php?page=template-class" target=
"_blank">Template-Klasse
</a>. Das sorgt f
ür
Übersicht und f
ür eine bessere Erweiterbarkeit.
</li>
181 <p><b>Neu in Version
3.0</b> (vom
1.9.2003)
</p>
184 <li><b>Komplett neu programmiert:
</b><br />
185 <i>Form E-Mail
3.0</i> wurde von Grund auf neu programmiert, damit m
öglichst viele Fehler, die ich anfangs machte (
<i>Form E-Mail
</i> war eines meiner ersten Scripts) ausgemerzt werden konnten.
</li>
186 <li><b><code>$friendly_sender
</code> erweitert:
</b><br />
187 Die Option
<code>$friendly_sender
</code> kann jetzt den Wert
"2" annehmen. Dadurch erscheint zus
ätzlich der Name des Absenders im E-Mail-Programm. Sollte der Name Zeichen enthalten, die nicht aus dem ASCII-Zeichensatz stammen, wird er mit Base64 codiert (s.u.).
</li>
188 <li><b>Betreffcodierung erneuert:
</b><br />
189 Die Betreffcodierung arbeitet nun hoffentlich endlich zuverl
ässig, da sie nun Base64 verwendet. Mit der urspr
ünglichen Quoted-Printable-Codierung gab es Probleme.
</li>
190 <li><b>Mehrere Empf
änger:
</b><br />
191 Es ist nun m
öglich, mehrere Empf
änger f
ür die Mail anzugeben.
</li>
192 <li><b>Referer-
Überpr
üfung:
</b><br />
193 Der HTTP-Referer (also sozusagen die Seite, von der das Script aufgerufen wurde) kann nun auf Wunsch einem einfachen Test unterzogen werden: Wenn sich die Host-Angabe nicht in einer im Script definierten Positiv-Liste befindet, wird
<i>Form E-Mail
</i> mit einer Fehlermeldung beendet. Das ist n
ützlich, um daf
ür zu sorgen, dass
<i>Form E-Mail
</i> nicht von fremden Homepages ausgenutzt wird.
</li>
194 <li><b>Auf Wunsch nur
<tt>POST
</tt>:
</b><br />
195 <i>Form E-Mail
</i> l
ässt sich mit der neuen Option
<code>$only_post
</code> so einstellen, dass es nur mit der HTTP-Zugriffsmethode
<tt>POST
</tt> aufgerufen werden kann.
</li>
196 <li><b>Vorlagen:
</b><br />
197 Es wird nun mit Vorlagen gearbeitet. So kann man jetzt den Text der Mail mit einer Vorlage steuern und die Formularfelder bei einem Fehler mit den bereits eingegebenen Daten vorbelegen lassen.
</li>
198 <li><b>Neue Zeitformatierung:
</b><br />
199 Die Uhrzeit wird nun mit
<code>strftime()
</code> formatiert, was mehr Freiheiten zul
ässt. Leider gibt es hier bei neueren PHP-Versionen Probleme, da die Wochentage und Monatsnamen trotz deutscher Spracheinstellungen englisch werden.
</li>
202 <hr width=
"80%" noshade=
"noshade" />
204 <p align=
"center">Die Liste der
Änderungen bis zur Version
3.0 finden Sie auf der
<a href=
"http://www.patshaping.de/redirector/redirect.php?page=form-email"><i>Form E-Mail
</i>-Infoseite
</a>!
</p>
206 <hr width=
"80%" noshade=
"noshade" />
208 <p><a href=
"readme.htm">ReadMe-Datei
</a></p>
210 <hr width=
"80%" noshade=
"noshade" />
212 <p style=
"font-size:8pt">© 2002-
2011 Patrick Canterino
</p>
214 <table border=
"0" cellspacing=
"0" style=
"font-size:8pt">
217 <td><a href=
"http://www.patshaping.de/" target=
"_blank">http://www.patshaping.de/
</a></td>
221 <td><a href=
"mailto:patrick@patshaping.de">patrick@patshaping.de
</a></td>