Ein einfacher Wechsler für Werbung in PHP

In den meisten Online-Verkaufsstellen hat man gerade in der Vorweihnachtszeit mehr Werbung unterzubringen, als Platz dafür vorhanden ist. Und da die ja zum Beispiel in der Sidebar möglichst weit oben stehen soll, liegt der Gedanke nahe, einen einfachen, zufälligen Wechsler zu verwenden, um abwechselnd die eine oder die andere Werbung an der besten Stelle zu zeigen. Dazu reicht ein einfaches Programm in PHP: <?php $wechsel=rand(1,2); If ($wechsel==1) { ?> <div id="Werbung"> Unser Klassiker: Modell 1 </div> <?php } else { ?> <div id="Werbung"> Unser Neuester: Modell 2 </div> <?php } ?> Die Variable $wechsel wird von der Zufallsfunktion rand() auf einen Wert von 1 oder 2 gesetzt und eine If-Else-Verzweigung zeigt je nach Wert die erste oder die zweite Werbung. Das lässt sich natürlich auch auf mehr als zwei Werbemessages erweitern

2011-12-22T09:47:27+02:00Dezember 22nd, 2011|PHP|Kommentare deaktiviert für Ein einfacher Wechsler für Werbung in PHP

Webbasierter Cloud-Editor ACE 0.2.0 mit neuen Sprachen

ACE ist ein webbasierter Programmeditor mit einem Funktionsumfang, der einem normalen Editor schon ziemlich nahe kommt. Es ist ein Nachfolge-Projekt von Mozilla Bespin. Die neue Version 0.2.0 bringt eine vertikal oder horizontal geteilte Ansicht des Editors, Code-Folding und einen Syntax-Check während der Eingabe. An Sprachen werden aktuell PHP, Java, Javascript, Ruby, C++, Python, HTML und CSS unterstützt. In Arbeit ist die Sprachunterstützung für Scala, C#, Perl, Groovy und JSON. Der Cloud-Editor ACE ist komplett in JavaScript geschrieben. Weitere Informationen und einen Download-Link findet man auf der ACE-Homepage.

2011-10-10T08:25:02+02:00Oktober 10th, 2011|HTML, Javascript, PHP|Kommentare deaktiviert für Webbasierter Cloud-Editor ACE 0.2.0 mit neuen Sprachen

PHP: Festplatten-Speicher des Webservers abfragen

Gelegentlich kann es wichtig werden, zu wissen, wie viel Speicherplatz man noch auf der Festplatte des Webservers zur Verfügung hat. Gerade bei einer Internetpräsenz mit vielen Digitalfotos in voller Größe sind schnell die Grenzen der Kapazität erreicht. Der folgende PHP-Schnipsel gibt die Gesamtgröße der Festplatte und den freien Speicherplatz darauf aus. Auch die im aktuellen Verzeichnis benutzte Kapazität wird angezeigt, das hilft zu erkennen, ob es wirklich die Fotos sind, oder ob ein anderer Bereich die Ressourcen belastet. Der Code dazu: <?PHP $path = "./"; $free = round(disk_free_space  ($path) / 1024 / 1024, 3); $disk = round(disk_total_space ($path) / 1024 / 1024, 3); printf ('<p>Von insgesamt %s GB sind noch %s GB frei.</p>', number_format ( $disk, 0, ',', '.'), number_format ( $free, 0, ',', '.') ); define ('_size', 4096); function dir_size($DIR = FALSE) { if ( ! $DIR OR ! is_dir($DIR)) return; if (substr($DIR,-1) != "/") $DIR .= "/"; if ($d = dir($DIR)) { $size = _size; while ($n = $d->read()) { if ($n == "." OR $n == "..") continue; $SIZE += (is_dir($DIR . $n)) ? dir_size($DIR . $n) + $size : ceil(filesize($DIR . $n) / $size) * $size; } $d->close(); } return $SIZE; } printf('<p>Im Verzeichnis sind %s Bytes in Benutzung</p>', dir_size(dirname(__file__))); [...]

2011-08-18T08:59:30+02:00August 18th, 2011|PHP|Kommentare deaktiviert für PHP: Festplatten-Speicher des Webservers abfragen

PHP: Alle Meta-Tags einer Internetseite anzeigen

Wer Internetseiten erstellt, muss häufiger alle Meta-Tags einer Seite auslesen. Das kann man natürlich über die Quellcode-Anzeige des Browsers machen, es kann aber relativ umständlich sein. Die PHP-Funktion get_meta_tags() macht es sehr einfach, alle Meta-Tags auf einmal auszulesen und anzuzeigen. Das sieht dann so aus: // Meta-Tags auslesen $seite = "www.homepage-anleitung.de"; $mtarray = get_meta_tags($seite); // Meta-Tags ausgeben foreach ($mtarray as $key => $wert) { echo $key.": ".$wert."<br />"; } Das Programm gibt alle Meta-Tags der Seite mit einem Tag pro Zeile aus. Wenn man das Script um ein Formular zur Eingabe einer Webseiten-Adresse erweitert, hat man ein Werkzeug, mit dem man schnell und einfach alle Meta-Tags beliebiger Internetseiten anzeigen kann.

2011-08-01T09:56:10+02:00August 1st, 2011|PHP|Kommentare deaktiviert für PHP: Alle Meta-Tags einer Internetseite anzeigen

PHP: Erreichbarkeit von Internetseiten prüfen

Wer mehrere Internetpräsenzen auf verschiedenen Servern betreuen muss, möchte vielleicht wissen, ob auch wirklich alle online sind und gegebenenfalls einen Hinweis bekommen, wenn eine davon aus irgendeinem Grunde nicht mehr erreichbar ist. Dazu muss man einfach nur eine Verbindung zu der Website öffnen und schauen ob das klappt. Der Code dazu lautet zum Beispiel: <?php $url = "www.homepage-anleitung.de"; $online = @fsockopen ("$url", 80); if (!$online) { echo "Seite $url ist nicht erreichbar"; } else { echo "Seite $url ist erreichbar"; } ?> Dies einfache Beispiel zeigt das Prinzip einer Online/Offline-Prüfung. Wenn man mehrere Seiten zu überwachen hat, sollte man die am besten in einer Schleife nacheinander testen und statt der einfachen Textausgabe über eine Email nachzudenken, zumindest für den Fall, dass die Seite nicht mehr erreichbar ist.

2011-08-01T09:57:19+02:00Juli 28th, 2011|PHP|2 Kommentare

PHP: Dateien in einem Verzeichnis zählen

Häufig muss man bei der Programmierung wissen, wie viele Dateien in einem Verzeichnis sind. Wenn man keinen Zähler hat, der bei jeder neuen oder gelöschten Datei angepasst wird, hilft nur das Zählen der aktuell im Verzeichnis befindlichen Dateien. Und das geht so: <?php $pfad = "."; $i = 0; $dh = opendir($pfad); while ($datei = readdir($dh)) { if($datei !== "" && $datei !== "." && $datei !== ".." && !is_dir($datei)) { $i++; } } echo "$i Dateien im Verzeichnis"; ?> Die Verzeichniseinträge "." und ".." werden nicht mit gezählt. Die Variable $pfad enthält das Verzeichnis, das durchsucht wird, im Beispiel wird mit dem Punkt das aktuelle Verzeichnis durchsucht. Hier kann man natürlich auch ein anderes Verzeichnis einstellen, z.B. $pfad="../bilder";.

2011-07-04T07:42:04+02:00Juli 4th, 2011|PHP|Kommentare deaktiviert für PHP: Dateien in einem Verzeichnis zählen

PHP/MySQL: Die ID eines neuen Datensatzes

Man hat schon so manchen schrägen Trick gesehen, um die ID eines neu angelegten Datensatzes herauszubekommen. Viele Leute schreiben mit dem INSERT einen definierten Wert, zum Beispiel "neu" in eines der Datenfelder, um dann genau diesen Wert in der Tabelle zu suchen und dann alle Daten in per UPDATE in den Datensatz zu schreiben. Dabei geht das auch viel einfacher: <?php $sql = mysql_query("INSERT INTO kunden (Vorname, Nachname, Adresse) VALUES ('$vorname', '$nachname', '$adresse')"); $id = mysql_insert_id(); ?> Die Funktion mysql_insert_id() liefert die ID, die bei der letzten INSERT-Operation für ein Feld vom Typ AUTO_INCREMENT vergeben wurde. Wenn die Verbindungs-Kennung nicht angegeben wird, wird die zuletzt geöffnete Verbindung angenommen. Die Funktion liefert 0, wenn die vorhergehende Abfrage keinen AUTO_INCREMENT Wert erzeugt hat. Falls Sie den Wert zur späteren Verwendung speichern möchten, stellen Sie sicher, dass Sie mysql_insert_id() direkt nach der Abfrage aufrufen, die einen Wert erzeugt hat.

2011-06-20T17:18:13+02:00Juni 16th, 2011|PHP|Kommentare deaktiviert für PHP/MySQL: Die ID eines neuen Datensatzes

PHP-Tipp: Ausgabe des Alphabets

Gelegentlich braucht man eine Alphabet-Ausgabe, zum Beispiel für ein Register. Bevor da jeder Buchstabe einzeln mit einer Ausgabe bedacht wird, kann man besser eine Schleife bilden, in der die ASCII-Codes des Alphabets nacheinander ausgegeben werden. So sieht der Code-Schnipsel dafür aus: <?php $i=65;                         //65 stellt den Buchstaben A dar while($i <= 90) {        //90 stellt den Buchstaben Z dar echo chr($i); $i++; } ?> Zusätzlich zur Ausgabe des Buchstaben mit echo chr($i); kann innerhalb der Schleife natürlich noch weiterer Code stehen, ein Link auf die entsprechende Registerkarte oder die Ausgabe von Elementen mit diesem Anfangsbuchstaben – was auch immer.

2011-06-09T08:48:14+02:00Juni 9th, 2011|PHP|Kommentare deaktiviert für PHP-Tipp: Ausgabe des Alphabets

Datum und Uhrzeit mit PHP ausgeben

In HTML gibt es keine Möglichkeit, Datum und Uhrzeit auf einer Seite mit auszugeben. Gerade bei statischen Seiten ist es  ein deutlicher Vorteil für die Auswertung einiger Suchmaschinen, wenn auf den einzelnen Webseiten das aktuelle Tagesdatum angezeigt wird. Der PHP-Code dazu ist nur ein übersichtlicher Einzeiler: <?php echo date("d.m.Y")." – ".date("H:I")." Uhr"; ?> Die Ausgabe sieht dann so aus: 30.05.2011 - 07:57 Uhr Wenn man den Code in eine gemeinsame Kopf- oder Fußzeile eintragen kann, braucht man ihn nur einmal einsetzen und er zeigt auf jeder Seite der Präsenz das Datum und die Uhrzeit an.

2011-05-30T08:12:45+02:00Mai 30th, 2011|HTML, PHP|Kommentare deaktiviert für Datum und Uhrzeit mit PHP ausgeben

Der Trinitäts-Operator in PHP

Bei einem erfahrenen PHP-Programmierer bilden sich nach einiger Zeit bestimmte Vorgehensweisen aus, durch die er schneller zum Ziel (dem fertigen Programm) kommt. Das spielt sich häufig in Strukturen oder Funktionssammlungen ab, aber eine ganz besondere Art der Effizienzsteigerung solcher Programmierer lässt denjenigen, der den Code später dann pflegen soll, stutzen: Die Benutzung des Trinitäts-Operators (Ternary Operator). Vielleicht ist Ihnen dieses Konstrukt ja schon einmal begegnet: $wochenende = ($tag > 5) ? 'ja' : 'nein'; Das sieht ziemlich anders aus als Standard-PHP-Code und kann im ersten Moment durchaus verwirren. Dabei handelt es sich um eine normale if / else – Abfrage, die man auch so schreiben kann: if ($tag > 5) { $wochenende='ja'; } else { $wochenende='nein'; } Der Trinitätsoperator funktioniert anders als die if / else – Abfrage nur, wenn ein Wert zurückgegeben wird. Etwas wie $wochenende = ($tag > 5) ? echo 'ja' : echo 'nein'; funktioniert nicht. Benutzt man aber statt echo print für die Ausgabe, klappt es wieder, denn print ist eine echte PHP-Funktion und gibt TRUE oder FALSE zurück. Wegen dieser komplizierten Handhabung ist der Trinitäts-Operator wohl nicht Anfänger's Liebling.

2011-05-23T07:43:34+02:00Mai 23rd, 2011|PHP|Kommentare deaktiviert für Der Trinitäts-Operator in PHP
Nach oben