Archiv | Impressum | Datenschutz
19. März 2010
Nerd 2.0

Entpacken mit PHP

Wer kennt das nicht, haufenweise verschiedene Archivformate zip, gz, bz, lzma, etc. sind auf dem Desktop kein Problem. Beim Erstellen einer Webanwendung wurde das in PHP schon komplizierter, also hab ich es exec() und 7-zip gelöst.

Im Anhang also ein Packet mit PHP – Funktion zum Entpacken und 7zip – Binary’s für 32 / 64 – Bit Linux und Windowssysteme.

Mehr erfahren »

16. April 2008
Nerd 2.0

XAMPP und Imagick (MagickWand)

Schön, wenn eine Fehlermeldung einen solange aufhalten kann, obwohl die Lösung so einfach ist.

Class ‚Imagick‘ not found in …

So fehlte nur eine Umgebungsvariable im Windowssystem, welche wie folgt gesetzt werden muss.

Arbeitsplatz-> rechts Klick-> Eigenschaften-> Erweitert-> Umgebungsvariablen-> Benutzerdefinierte..

MAGICK_HOME=Pfad/mit/Imagick/Configdateien (z.B. C:/Imagick/config)

Vielen dank an Mikko’s Blog für die Lösung!

31. März 2008
Nerd 2.0

Text gekürzt, aber HTML offen?

Schon wieder ist es passiert, dass ein nicht geschlossenes HTML-Tag aus den Auszügen mein Layout zerstört hat, aber im Netz lässt sich ja immer schnell eine Lösung finden.

Hier also ein PHP-Codeschnipsel der alle geöffneten HTML-Tags schließt. Zwar keine schöne Lösung, aber was besseres ist mir auf die Schnelle auch nicht eingefallen.

function close_tags($html){
// Alle geöffneten Tags in ein Array
preg_match_all("#<([a-z]+)( .*)?(?!/)>#iU", $html, $result);
$openedtags = $result[1];
// Alle geschlossenen Tags in ein Array
preg_match_all("#</([a-z]+)>#iU",$html,$result);
$closedtags = $result[1];
$lenght = count($openedtags);
// Alle Tags geschlossen
if(count($closedtags) == $lenght)
return $html;
$openedtags = array_reverse($openedtags);
// Tags schließen
for($i = 0; $i < $lenght; $i++) {
if (!in_array($openedtags[$i],$closedtags))
$html .= '</'.$openedtags[$i].'>';
else
unset($closedtags[array_search($openedtags[$i],$closedtags)]);
}
return $html;
}

Quelle: textsnippets.com

4. März 2007
Nerd 2.0

META-Tags, dynamisch mit Ultimate Tag Warrior!

Ihr kennt das Problem. UTW (Ultimate Tag Warrior) fügt für alle euer Seiten META-Tags, nur für die Hauptseite nicht.

Um dies zu ändern müsst ihr einfach diese Zeile in eure header.php des Templates einfügen.

< ?php if (is_home()) { ?>
<meta name="keywords" content="<?php UTW_ShowWeightedTagSet('tagsettextonly', '',  100); ?>" />
< ?php } ?>

Damit werden eure wichtigsten 100 Tags in den META-Tags angezeigt.

Da bis zu 1000 Zeichen erlaubt sind, müsst ihr wenn ihr nur Wörter mit mehr als 9 Buchstaben benutzt die Länge natürlich etwas herunter drehen.

Mfg BODY

1. Februar 2007
Nerd 2.0

Hacken aus Langweile

Schon wieder wurde eine Seite aus meinem Netzwerk „gehackt“…. Die Bande nannte sich ganz große „TheWorldsHackeR“ und kamen scheinbar aus einem türkischsprachigen Land.

Zum Einbrechen nutzten sie eine Schwachstelle in PHP und schoben in den cache/ Ordner einer phpBB ein File Namens „attach_config.php“, was aber nur die Seite etwas „verschönerte“.

Weitere Veränderungen sind bis jetzt noch nicht zu erkennen.

Mfg BODY-SNATCHER

PS: Im Anhang gibts natürlich wieder nen paar Bilder ;-)

23. November 2006
Nerd 2.0

Aktuelles per RSS

Seit neusten kann man nun in der Kategorie Links in meinen Blog. Die aktuellen Änderungen auf dort verlinkten Websites anzeigen.

Das ganze funktioniert per RSS und einem WordPress-Plugin namens WP-RSSImport. Diese Ruft mit einem einfachen Kommando einen RSS-Feed ab.

< ?php RSSImport(10, "http://nerd20.de/feed/", true, false); ?>

Hierbei ruft bestimmt das erste Parameter die Zahl der Beiträge, die abgerufen werden, das zweite den Ort des RSS-Feeds, das dritte ob Beschreibungen mit abgerufen werden sollen und das vierte ob die Nachrichten gekürzt werden sollen.

Das ganze kann man per Exec-PHP in jeden Post einfügen.

Viel Spaß damit wünscht BODY-SNATCHER.

PS: Dieser Post wurde übrigens mit dem Plugin Codesnippet realisiert.

26. Oktober 2006
Nerd 2.0

Neue Seite für das Netzwerk

In der letzten Zeit habe ich nun ein wenig am Design von der Seite über mein Netzwerk (www.body-snatcher.ath.cx) gebastelt.

Das neue Design beruht auf einem MediaWiki-Template, dass Jason Pearce in der ursprünglichen Form entwickelt worden ist.

Da aber mit der Umstellung des Templates auch viele Schwachstellen im jetzigen Script wieder hervor gekommen sind, habe ich mich entschlossen es komplett neu zu schreiben.

Natürlich war es perfekt, dass ich jetzt einen Webspace mit PHP 5 Unterstützung hatte und somit gleich etwas mit Objekten spielen konnte. Heraus gekommen ist ein miniCMS, welches ObjectOrientiert-Programmiert wurde und sich einfach als HTML parsen lässt, um es dann auf meinen Webserver übertragen zu können.

Wie dies genau funktioniert und vor allem noch viele weitere Dinge erfahrt ihr bald auf www.body-snatcher.ath.cx.

Viel Spass, euer BODY-SNATCHER.

20. September 2006
Nerd 2.0

Serverwechsel & Blog-URL

Wir haben nun den Server innerhalb unseres Webhoster gewechselt, da der neue PHP 5 unterstützt, übersichtlichere Verwaltungsmöglichkeiten besitzt und auch besser Möglichkeiten zur Auswertung von Logfiles bietet.

Doch was steht alles so nach einem Serverwechsel an? Updates von MySQL-Daten sind nur der Anfang.

Sämtliche Verweise müssen geändert werden und Dateien neu gelinkt.

Dies ist aber auch eine Möglichkeit endlich neue Strukturierung vorzunehmen, wie man es hier am Blog am Besten sieht. Es wird nicht mehr auf die lange Webserver umgeleitet, sondern direkt bei der Blogurl geblieben.

Damit das aber alles so mit WordPress läuft waren 2 Stunden hin und her probieren von Nöten, wobei ich jetzt nicht gerade die sauberste Lösung besitze, aber auf jeden Fall eine Funktionierende.

So sind Blog und WordPress URL auf diese Adresse gesetzt, aber mittels .htaccess wird auf den anderen Server weitergeleitet. Dies, aber nur für PHP Dokumente und Pfade. Bilder werden direkt von hier abgerufen.

Warum mach ich mir die ganze Arbeit? 1&1, wo die Domain liegt, besitzt keine PHP Unterstützung und ich kann somit nicht den Blog nicht dort laufen lassen, sondern auf einem PHP-fähigen Webspace.

Derzeit bin ich noch am Überarbeiten der Lösung, wenn sie aber „reif“ für große Tests ist, dann poste ich sie hier.

Mfg BODY-SNATCHER


Update 1:
Ich hab nun einen recht einfachen Weg gefunden das doch recht einfach zu lösen:## .htaccess auf dem Server mit derURL RewriteEngine On
RewriteBase /
RewriteRule ^(.+(\.zip|rar|exe|tar|gz|jpg|gif|css|js))$ http://wordpress.server/$1 [L]
## Keine Proxy zum schonen des Traffic
RewriteRule (.*) http://wordpress.server/$1 [P]
## Proxy (URL beliebt oben stehen.)## .htaccess auf dem Server mit der WordPressinstallation
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php/$1 [L]Das wars auch schon und ihr müsst eure .htaccess im WordPressverzeichnis noch von chmod 666 auf 644 stellen, damit sie nicht verändert werden kann.

An diesem Beispiel kann man nun ganz einfach sehen, dass gratis Domains, wie meine von 1&1, einfach über PHP Webspace gelegt werden können, und der User gar nicht mehr feststellten kann, wo er eigentlich ist.

18. Dezember 2005
Nerd 2.0

Cronjob Problem beseitigt

Da ich mit den 2 Cronjobs auf dem Webspace leider nicht sehr viele Scripte abdecken kann, musste ich mri irgendwie aushelfen. Als erstes hab ich einfach eine Datei geschrieben, die mit Hilfe von Timestrings arbeite, was aber zu kompliziert war, als das man es schnell und leicht gebrauchen konnte. Aber dann bin ich nach etwas googlen auf ein Script gestoßen, was eigentlich Leuten helfen soll, die gar keine Crons haben.

Hier kann man nun Cronjobs fast im Unixformat eingeben, was ja viele Vorteile hat.

#Kommentare beginnen mit ‚#‘
#mi h d m wtag job Kommentar
0 5 * * Sun cronjobs/dump.inc.php
# DB-Dump jeden Sonntag um 5 anlegen
40 5 2 * * cronjobs/sendlog.inc.php
# am Monatsanfang letzte Server-Logdatei verschicken
*/15 8-19 * * Mon-Fri cronjobs/refr_ext.inc.php
# externe News-Quellen auffrischen

Da die Version auf der Seite, aber viele Bugs hat, haben sich Fans an die Arbeit gemacht und es komplett umgeschrieben:
Download: http://www.digilog.de/fremddaten/pseudo-cron_131.zip

ursprüngliche Seite: http://www.bitfolge.de/pseudocron-de.html

Viel Spaß BODY-SNATCHER