Archiv für Januar 2010

PHP: Smarty + Eclipse PDT

Veröffentlicht am 29. Januar 2010 um 22:40 by Fabian Martin Permalink

Für alle die Eclipse PDT nutzen, und den Smarty Support bis dato schmerzlich vermisst haben, gibt es eine gute Nachricht. Unter http://code.google.com/p/smartypdt/ ist eine neue Version von SmartyPDT erschienen, welches nun auch mit aktuellen PDT und Eclipse Versionen kompatibel ist.

Die Installation ist spielend einfach:

  • Ladet euch das ZIP Archiv herunter
  • Öffnet Eclipse und wechselt in das Menu Help -> Install New Software
  • Geht auf Add… und gebt in das obere Feld SmartyPDT ein
  • Im gleichen Fenster betätigt Ihr den Archive… Button und wählt die heruntergeladene ZIP Datei aus

  • Bestätigt das ganze mit OK
  • Im unteren Fenster sollte das Smarty Feature erscheinen, wird es bei euch nicht angezeigt, entfernt den Haken bei Group items by category
  • Wählt jetzt das Feature aus und bestätigt es mit Next, der Rest läuft nun wie eine ganz normale Installation ab.

jQuery: Prüfen ob ein Objekt versteckt ist

Veröffentlicht am 27. Januar 2010 um 00:23 by Fabian Martin Permalink
if($("#myDivID").is(":hidden"))
{
    // Element ist versteckt
}

ASP.NET: Mails über SMTP mit SMTP Auth versenden

Veröffentlicht am 26. Januar 2010 um 08:28 by Fabian Martin Permalink

Mit dem folgenden Code Schnipsel lassen sich E-Mails über einen SMTP Server versenden, der eine Anmeldung mittels SMTP Auth erwartet.

MailMessage Message = new MailMessage();

// Benutzername u. Passwort
NetworkCredential UserNamePass = new NetworkCredential("username@example.org", "password");

// SMTP Client erstellen
SmtpClient Client = new SmtpClient()
{
	DeliveryMethod = SmtpDeliveryMethod.Network,
	Host = "mail.example.org",
	UseDefaultCredentials = false,
	Credentials = UserNamePass
};

// Mail versenden
Client.Send(Message);

Das MailMessage Objekt muss natürlich noch mit den wichtigsten Daten (Empfänger, Betreff, Nachricht etc.) gefüllt werden.

Lighttpd 1.4: HTTP 417 Expectation Failed

Veröffentlicht am 13. Januar 2010 um 15:22 by Fabian Martin Permalink

Versucht man mit einer cURL oder .NET Anwendung POST Daten an einen Lighttpd 1.4 Server zu senden, bekommt man die Meldung


HTTP/1.1 417 Expectation Failed

Dies liegt daran, das die Programme einen Expect: 100-continue Header senden, und als Antwort 100 (Continue) oder 417 Expectation Failed erwarten. Lighty kennt den Header jedoch nicht, und antwortet deswegen mit dem besagten 417 Expectation Failed.

Der Expect: 100-continue Header soll verhindern, das Daten an den Server gesendet werden, die nicht benötigt werden. Erkennt der Server z.B. das er die Anfrage ablehnen muss, kann er dies dem Client mitteilen, noch bevor die POST Daten übermittelt wurden.

Wer dennoch POST Daten an Lighty senden möchte, kann die folgenden Paramter anpassen:

.NET


System.Net.ServicePointManager.Expect100Continue = false;

cURL unter PHP

curl_setopt($objCurl, CURLOPT_HTTPHEADER, array('Expect: '));

cURL auf der Kommandozeile

curl -v -H "Expect: " -F "field=value" http://example.com/upload.php

Alternativ aktualisiert man auf Lighttpd 1.5. Dieser kennt den Expect: 100-continue Header und beantwortet entsprechende Anfragen korrekt.

Browser senden übrigens keinen Expect: 100-continue Header.

Deutschsprachige PHP-Blog-Sammlung

Veröffentlicht am 12. Januar 2010 um 22:20 by Fabian Martin Permalink

Eine Liste mit deutschsprachigen Blogs zum Thema PHP stellt derzeit der PHP Gangsta zusammen. Aufgenommen werden Blogs die das Anfängerstadium von PHP hinter sich gelassen haben, und die Besucher mit regelmäßigen Beiträgen versorgen.

Jeder kann sein (oder ein fremdes) Blog vorschlagen und so helfen die Liste zu vervollständigen. Sie enthält bereits einige gut zu lesende Blogs, die nach einer kurzen Prüfung bereits den Weg in meinen Newsfeeder gefunden haben und dort hoffentlich auf Dauer bleiben.

Links: