Webprojekt – Calinee, Hören & Genießen

Ein Webprojekt calinee.de für einen befreundeten Pianisten aus dem Sauerland, der ein Candlelight Dinner mit Klavierbegleitung in verschiedenen Restaurants anbietet. Ich habe die überschaubare Website komplett mit freier Software entwickelt. Unter Anderem GIMP und Eclipse waren im Einsatz. SEO und Webshop kommen nach Bedarf später nach. Es wird also später noch ein wenig mehr Arbeit auf mich zukommen ;-)

PHP Kontaktformular Klasse

In verschiedenen Projekten benötige ich sehr oft ein Kontaktformular welches immer die selben Attribute und Eigenschaften besitzt. Daher habe ich mir zur vereinfachung eine PHP Klasse geschrieben die mir ein komplettes Kontaktformular ausgibt, dynamisch mit jQuery validiert, serverseitig validiert und an den zu sendenden Empfänger schickt. Alle Einstellungen sind durch Kofigurarionsvariablen im Konstruktor zu bestimmen. Wie zum Beispiel die Eingabemaske mit unterschiedlichen validierungseigenschaften : text,textarea,plz,mail …
Hier ein Beispiel zum erzeugen:

<?php
include_once('kontakt_lib.php');
$set['mail-to']='ansprechpartner@meine-seite.de'; // Kontaktformempfaenger
$set['mail-from']='web-form@meine-seite.de'; // Absender
$set['title']='Kontaktform - Meine Seite'; // Titel
$set['jQueryMSG'] = true; // Zeigt direkt Fehler an
/*
Hier koennen 5 verschiedene Angaben gemacht werden:
text -> kleiner Text
textarea-> mehrzeiliger Text
mail -> Mailadresse mit validierung
plz -> Postleitzahlvalidierung
captcha -> Rechencaptcha
*/
$atr['Vorname']='text';
$atr['Nachname']='text';
$atr['E-Mail']='mail';
$atr['Nachricht']='textarea';
$atr['Sicherheitsabfrage']='captcha';
// Erzeugen
$k = new Kontaktform($atr,$set);
$k->checkForm(); // Validierung und Sendung
$k->echoForm(); // Ausgabe des Formulars
?>

github – stetro/contactlib

Für das Styling stehen viele verschiedene Klassentypen bereits im Formular und können selbst sehr einfach via CSS durchgestylt werden. Ein Beispiel Styling wird noch in Github hochgeladen. Bei Interesse, Verbesserungsvorschlägen oder Mithilfebedarf unter GitHub einfach melden. Vielleicht kann die Klasse jemand gebrauchen.

Das Ergebnis des oben stehenden Beispiels könnte dann so aussehen:

Tweetpoller – Cloud9 Projekt

Für das Fach „Netzbasierte Anwendungen“ an der FH-Köln standen wir vor der Aufgabe einen Twitter Feeder in JavaScript zu nutzen. Hierfür habe ich ein eigenes jQuery Plugin „tweetpoller“ geschrieben welches uns diese Arbeit sehr gut abnimmt. Tweetpoller lädt zu beginn einen Bestand der letzten Tweets eines Nutzers und fragt nach einem vorgegebenen Intervall immer wieder die Twitter API an ob neue Tweets des Benutzers online sind. Neue Tweets werden dynamisch in die Liste aller Tweets eingefügt. Das Projekt liegt unter github und kann einfach als jQuery plugin genutzt werden:

$(function(){
$("#twitter-tweets").tweetpoller(
{
"filter_value": "stetro",
"filter_attr": "screen_name",
"time": 20*1000,
"count" : 7,
"read_more_link_text" : "Mehr Tweets ..."
});
});

Der passende HTML Code könnte so aussehen:

<ul id="twitter-tweets">
<li>Tweets werden geladen ...</li>
</ul>

Besonders interessant war die IDE die ich für dieses Projekt das erste mal genutzt habe. Cloud9 ist eine Webbasierte JavaScript IDE die es ermöglicht sehr flexibel im Web auf Quellcodes zuzugreifen und eigens geschriebene Testumgebungen zu nutzen. Außerdem hat Cloud9 eine direkte Anbindung an github. Für öffentliche WebProjekte somit Ideal !

SNOC – U23 Projekt 2011

Dieses Jahre hatte ich die Möglichkeit beim diesjährigen U23 des Chaos Computer Club Cologne (C4) Teilzunehmen wo es in diesem Jahr um Sicherheit in Webapplikationen ging. Nach ersten Einführungsveranstaltungen in denen uns die Basics der Web Exploids in Ausübung und Prävention näher gebracht wurden, haben wir Gruppen gebildet in denen Spezielle Themen behandelt wurden (C4 Wiki).

In Unserer Gruppe hatten wir das Thema PHP-Shell was ein PHP Skript darstellen soll der durch z.B. eine Uploader lücke eines PHP Skripts hochgeladen und ausgeführt werden kann. Wenn dieser Skript nun aufgerufen wird lädt der Browser eine fast voll funktionsfähige Konsole. Die Kommunikation verläuft mit AJAX und Base64 codiert damit die gesendeten Daten nicht in Logfiles o.ä. auffallen. Außerdem kann man frei auf dem Server Navigieren (mit den Rechten des apache users).

Weitere Funktionen:

  • Upload in das Arbeitsverzeichniss ( falls schreibrechte vorhanden )
  • Download JEDER Datei mittels „download [datei]„
  • Freie navigation mit cd
  • Autocompletion mit Befehlen (Ordner sollen folgen)
  • Komplexe Kommandeos sind im Menü „Weitere Funktionen …“ zu finden
Habe den Quelltext bei GIThub veröffentlicht: SNOC PHP-Shell (shell is not an oil company) 

RubyGame – RJump

Nachdem ich mich mit kleineren Konsolenprogrammen beschäftigt habe wollte ich nun ein Projekt mit GUI erstellen und habe ein Ruby SDL framework gefunden (gem install rubygame). Hier habe ich dann ein kleines Spriteprojekt gebastelt welches Kollisionen und Gravitation ermöglicht.

Hier ein Video:
Kleiner Test in dem ich eine Art Doodlejump nachgebaut habe. Die Framerate ist live viel höher und das Gameplay ist eigendlich recht flüssig.

Follow

Get every new post delivered to your Inbox.

Join 27 other followers