. .
0

PHP: Versenden von eMails über einen (entfernten) SMTP-Server

PHP Code

Über fsockopen() können mit PHP TCP-Verbindungen aufgebaut werden – so auch zu einem SMTP-Dienst. Beim Versenden von eMails müssen bei der SMTP-Sitzung natürlich bestimmte Vorgaben und Abläufe erfüllt sein (siehe auch RFC 821). Die kleine Klasse „eMail“ ermöglicht das Versenden von eMails auf recht einfache Weise. Allerdings ist sie an die Bedürfnisse des deutschen Zeichensatzes angepasst. Bei der Authentifizierung sollte darauf geachtet werden, dass der SMTP-Server die Methode der Authentifzierung auch unterstützt bzw. zulässt. Unten in diesem Beitrag ist ein Beispiel, wie dann über die Klasse „eMail“ eine HTML-eMail versendet werden kann.   <?PHP /* * this is a small

6

Wetterdatenerfassung – Erstellung der Software „weatherlogd“

Wetterstationsempfänger & Raspberry Pi

Inhalt Beschreibung & Infrastruktur Auswertung der Messdaten Funktionen Quellcode Projektdaten Demo Ausblick Beschreibung & Infrastruktur Über die Wetterstation WH-1050 erhalte ich Wetterdaten wie Temperatur, Windgeschwindigkeit oder Luftfeuchtigkeit. Um diese Daten auslesen zu können, habe ich den Empfänger der Wetterstation per USB an einen Raspberry Pi angeschlossen. Auf dem Raspberry Pi läuft ein Raspbian „wheezy“ Linux Betriebssystem mit dem Hostname „weatherfish“. Sehr schön ist, dass zum Auslesen der Wetterstation diesen Typs bereits ein Python-Projekt namens „pywws“ besteht. Über diese Software können die RAW-Daten der Wetterstation bezogen werden. Leider bietet pywws keine Möglichkeit, die gewonnenen Daten in eine Datenbank speichern zu können.

0

C: Interprozesskommunikation über Message Queues

C Code

In diesem Beispiel zeige ich kurz, wie Message Queues zum Austausch von Nachrichten zwischen zwei unterschiedlichen Prozessen verwendet werden können. Hierzu einmal das Headerfile msg_queue.h: #ifndef _PRJ_MSG_QUEUE_H_ #define _PRJ_MSG_QUEUE_H_ #include <stdlib.h> #include <stdio.h> #include <string.h> #define QUEUE_KEY 2048 #define STOP_COMMAND "exit" /* type this to stop writting to message queue */ typedef struct _userOptions { size_t write; size_t read; } userOptions; typedef struct _msgBuffer { long type; char text[2048]; } msgBuffer; void prj_usage(); userOptions prj_initUserOptions(userOptions options); int prj_parseArgs(int *argc, char **argv, userOptions *options); int prj_startQueue(key_t const key); void prj_stopQueue(int msqid); int prj_readFromQueue(int msqid); int prj_writeToQueue(int msqid); int main(int argc, char

0

C: Passwortabfrage im Terminal

C Code

Ich beschreibe hier kurz, wie unter Linux in der Konsole ein Passwort abgefragt werden kann, ohne dass die Eingabe des Users im Terminal erscheint. Hierzu Definitionen im Header-File passphrase.h: #ifndef PRJ_PASSPHRASE_H #define PRJ_PASSPHRASE_H 1 #if defined(__cplusplus) extern "C" { #endif char * prj_read_passphrase(size_t size); int prj_get_passphrase(size_t count, size_t size, char **passphrase); #if defined(__cplusplus) } #endif #endif /* !PRJ_PASSPHRASE_H */ Daraufhin der eigentliche Code in passphrase.c: #include <stdlib.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <termios.h> #include "passphrase.h" /* * \brief prj_read_passphrase * * reads from stdin input of user * * \param size maximum length of input * * \return

0

C: POSIX shared memory objects

C Code

Ich liste hier kurz eine Möglichkeit, unter Linux unterschiedlichen Prozessen Zugriff auf gemeinsamen Speicher über das Dateisystem zu geben. Dazu kann man sog. POSIX Shared Memory Objekte verwenden. Es wird mit shm_open() entweder vorhandener Speicher geöffnet oder erstellt. Danach kann man über /dev/shm/[dateiname] auf diesen Speicherbereich zugreifen. Dieser verhält sich wie eine normale Datei. Hier also erst einmal die Headerdatei mmap.h: #ifndef PRJ_MMAP_H #define PRJ_MMAP_H 1 #if defined(__cplusplus) extern "C" { #endif int prj_shm_mmap_create(char const *filename, int readonly); int prj_shm_mmap_write(int shmfd, char const *filecontent, size_t sz); int prj_shm_mmap_remove(char const *filename); #if defined(__cplusplus) } #endif #endif /* !PRJ_SHMEM_H */ Und danach

0

Plugin: mechanic-visitor-counter v.1.8

Da sysalyser.de dringend nach fünf Jahren ein neues Layout benötigte, habe ich mich zur leichteren Handhabe dafür entschieden, ein vorgefertigtes Tool zur Datenverwaltung zu verwenden. Somit bin ich bei WordPress gelandet und habe dabei auch das Plugin „mechanic-visitor-counter“ installiert. Hier ist mir allerdings aufgefallen, dass die Art des Loggings nicht meinen Vorstellungen entsprach. Wiederkehrende Benutzer werden zwar nach Tagen getrennt, aber nicht nach IP, da die IP-Adresse der primäre Schlüssel der dahinterliegenden mySQL-Tabelle ist (nachzuvollziehen bei Standard-Installation der Version 1.8 in der originalen Datei [DocumentRoot]/wp-content/plugins/mechanic-visitor-counter/wp-statsmechanic.php). Daher ist ein mehrfaches Ablegen der IP-Adresse in der Tabelle nicht möglich. Das bedeutet, dass

Kommentare deaktiviert für Datenbank-Systeme

Datenbank-Systeme

Data Exchange System Es basiert vollständig auf den Programmiersprachen php, javascript, css und natürlich html. Die dahinterliegende Datenbank ist auf mySQL. U.a. werden folgende Features unterstützt: Administrationscenter zur Benutzerverwaltung Übertragung von vordefinierten Dateien (in Konfigurationsdatei einstellbar) – Dateien werden beim Upload gegen die Dateiendung geprüft und gegen dessen MIME-Type. Hochgeladene Dateien werden auf Viren geprüft. Infizierte Dateien werden gelöscht. Protokollierung aller Aktionen (z.B. Erstellung eines Ordners, Datei gedownloaded, usw.) Dateien müssen anderen Usern freigebenen werden, ansonsten ist der Download nicht verfügbar. Ein für das Drucken angepasstes Protokoll ist vorhanden. Dateien werden automatisch nach 21 Tagen gelöscht, dies kann aber für

Kommentare deaktiviert für Webauftritte

Webauftritte

www.blumen-ingolstadt.de Die Erstellung der WebSite www.blumen-ingolstadt.de erfolgte 2011. Diese Seite stellt den Betrieb rund um den Floristen aus Ingolstadt – Graf Loew – vor. Auf dieser Seite stehen Informationen zum Betrieb und einige nützliche Tipps bzgl. Floristik. Der Service von Graf Loew wird genau beschrieben. Über das Kontaktformular kann an den Betrieb eine Nachricht gesendet werden. Die Galerie unter Produkte sowie die News und das Gästebuch werden im Hintergrund vom Data Exchange System gesteuert. www.apgelehnt.de Das Projekt wurde 2009 übernommen. Dazu wurde die WebSite komplett überarbeitet und das vorher verwendete WordPress abgelöst. Ziel dieser WebSite ist die Möglichkeit, bei anderen

0

Ausbau der hinteren Seitenscheibe beim Mazda 6 (GG1/GY1)

Ausbau der hinteren Seitenscheibe beim Mazda 6

Diese Anleitung stellt meine Vorgehensweise dar. Sie hat keinen Anspruch auf Vollständigkeit oder Richtigkeit. Daher kann ich keine Haftung übernehmen, die auf Grund der Folge der in der Anleitung dargestellten Handlung entstanden ist. Bitte gehen Sie bei der geschilderten Arbeit stets vorsichtig vor. Müssen Sie Änderungen an der Elektronik oder an elektrischen Verbrauchern vornehmen, sollten Sie vorher immer die Batterie abklemmen. Hinweis: Sollten Sie sich nicht sicher sein, ob Sie die hier dargestellte Vorgehensweise bewältigen können, müssen Sie in Erwägung ziehen, die Arbeiten von einer qualifizierten Person durchführen zu lassen. 00. Als erstes sollten Sie die entsprechende Scheibe etwas herunterfahren.

2

Demontage der Heckstoßstange beim Mazda 6 (GY1)

Demontage der Heckstoßstange beim Mazda 6

Ich beschreibe hier, wie die Heckstoßstange beim Mazda 6 Facelift abgenommen werden kann. 00. Der Abbau der Heckstoßstange erfordert die Demontage der äusseren Rückleuchten. Hierzu müssen Sie im Kofferraum auf beiden Seiten die Klappen am hinteren Teil entfernen. Dahinter verbirgt sich sodann jeweils eine weitere Klappe mit Klettverschluss. Drücken Sie diese nach oben und lösen Sie mit einer 10er Nuss die zwei im Bild angedeuteten Schrauben.   01. Sie können nun die Rückleuchten durch Ziehen nach hinten herausnehmen. Klippen Sie jeweils die zwei Stecker ab.   02. Als Nächsten lösen Sie mit einem Kreuzschraubendreher die innere Schraube auf beiden Seiten.

1

Montage des Maxi-Cosi EasyFix im Mazda 6 (GG1/GY1)

Montage des Maxi-Cosi EasyFix im Mazda 6

Ich beschreibe hier, wie man das Maxi-Cosi EasyFix – System beim Mazda 6 Facelift montiert. Das Fahrzeug ist mit dem Isofix-System ausgestattet. Beachten Sie bitte, dass nur eine richtige Montage des Haltesystems optimale Sicherheit bieten kann. Bitte geben Sie mir Bescheid, falls Ihnen ein Fehler in dieser Anleitung auffallen sollte. 00. Die Ausgangssituation. Zu sehen ist der Rücksitzplatz hinter dem Beifahrer. Die Verankerungen des Isofix sind unterhalb der markierten Punkte.   01. Die Hacken des Isofix sehen Sie, wenn Sie das Polster etwas nach oben ziehen. Zur Schonung des Polsters und zur leichertern Handhabung liegen dem Maxi-Cosi Easyfix zwei Führungsrahmen

9

Austauschen der Vorderbremsen beim Mazda 6 (GG1/GY1)

Austauschen der Vorderbremsen beim Mazda 6

Ich beschreibe hier, wie man beim Mazda 6 (Baujahr 2006) die Vorderbremsen wechselt. Beachten Sie bitte, dass die Bremsen zur aktiven Sicherheit gehören. Sie sollten sich im Klaren sein, ob Sie die folgenden Arbeiten selbst durchführen wollen. 00. Die Ausgangssituation. Am Einfachsten ist es, das Fahrzeug mit der Hebebühne zu erhöhen. Das Rad wie gewohnt demontieren.   01. Entfernen Sie als erstes die in den Bildern gezeigten Schrauben. Dies ist notwendig, um den Bremsblock später leichter lösen zu können.    02. Entfernen Sie nun die obere Schraube am Block, der die Beläge umfasst. (Das Bild ist aus der Perspektive hinter

1

Ausbau des Scheinwerfers beim Mazda 6 (GG1/GY1)

Ausbau des Scheinwerfers beim Mazda 6

Ich beschreibe hier kurz, wie der Scheinwerfer beim Mazda 6 ausgebaut werden kann. 00. Die Ausgangssituation. Um an alle Schrauben des Scheinwerferkastens heranzukommen, muss die Stoßstange demontiert sein. Dazu gibt es hier eine Anleitung.   01. Als erstes lösen Sie die im Bild gezeigte Schraube mit Hilfe einer Ratsche (10er Nuss).   02. Danach diese hier.   03. Oberhalb der Scheinwerfer befinden sich zwei Schrauben, die Sie ebenfalls lösen müssen.   04. Außen befindet sich nun noch ein Klipphalter. Mit einem Schlitzschraubendreher können Sie diesen entfernen.   05. In der Mitte unterhalb des Scheinwerfers ist die letzte Schraube (mit einer

8

Demontage der Frontstoßstange beim Mazda 6 (GG1/GY1)

Demontage der Frontstoßstange beim Mazda 6

Auf Anfrage beschreibe ich hier, wie man die Frontstoßstange des Mazda 6 (FL ohne Xenon) abbaut. 00. Die Ausgangssituation. Prinzipiell brauchen Sie Ihr Fahrzeug nicht zu erhöhen, es erleichtert aber die Arbeit.   01. Sie werden aller Wahrscheinlichkeit nach dieses Werkzeug brauchen. Eine 10er Nuss und Kreuzschlitz-Schraubendreher in mehreren Größen in jedem Fall.   02. Drehen Sie die zwei im Bild gezeigten Schrauben auf. Das gleiche für die rechte Seite.   03. Als nächsten Schritt drehen Sie wiederum die im Bild gezeigte Schraube auf. Verwenden Sie dazu die 10er Nuss. Das Gleiche auf der linken Seite.   04. Lösen Sie

0

Bebilderte Anleitung zum Ausbau einiger Interieur-Teile im Mazda 6 (GG1/GY1)

Bebilderte Anleitung zum Ausbau einiger Interieur-Teile im Mazda 6

Auf Wunsch eines Besuchers beschreibe ich hier, wie man die im Thema abgebildeten weißen Teile herausbekommt. 00. Dies sind die Ausgangssituationen. (1) 01. Der Ausbau der eingeklippsten Leisten geht relativ einfach. Unterhalb dieser sind Einsparungen, in denen man mit dem Finger die Leisten nach außen drücken kann. (2) 01. Die Lüftungsgitter kann man ebenfalls sehr leicht herausnehmen, da diese ebenfalls nur eingeklippst sind. Drücken Sie mit dem Daumen das Gitter zur Frontscheibe hin und ziehen Sie das Gitter nach oben. (3) 01. Die Verkleidung am Fensterrahmen ist wiederum auch nur aufgeklippst. Siehe auch Anleitung ‚Türverkleidung ausbauen‚ (Punkt 3 und 4)