| | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				08.12.2013 |  
			| SSL Einschalten mit PHP 
 Der PHP-Code ist noch Baustelle. Testen kann man die Funktion schon: https für untergang.deIrgendeine Seite von untergang.de oder wormser-region.de ansurfen, dann im grafischen Header der Seite auf den https- Knopf drücken.  --> Die angesurfte Seite wird im sicheren SSL- Modus geöffnet.
 Zurück auf http gehts
 momentan noch nichtjetzt auch. Die Session-ID wird nicht übertragen; aber das ist hier ja auch kein Shop.to be continued.
 
 Und mit diesem Script schalte ich zurück von https nach http.
<?php
 $url = $_SERVER["HTTP_REFERER"];
 // **** Letzte URL soll von Untergang.de kommen
 $urlParts = parse_url($url);
 // **** URL spalten
 // print_r($urlParts);
 // **** print_r macht das array sichtbar
 // echo $urlParts[host];
 // echo $urlParts[path];
 // echo $urlParts[query];
 header ("Location:https://www.sslid.de.untergang.de".$urlParts[path]."?".$urlParts[query]);
 // **** Denk an das Fragezeichen ???
 exit;
 // **** exit nicht vergessen;
 ?>
 
 
<?php
 $url = $_SERVER["HTTP_REFERER"];
 $urlParts = parse_url($url);
 $umleitung_ssl = $urlParts[path];
 //das Wort untergang.de/ wird entfernt
 $umleitung_ssl_ohne_ug = strcspn($umleitung_ssl,"untergang.de/");
 $umleitung_ssl_ohne_wert = substr($umleitung_ssl,0,$umleitung_ssl_ohne_ug);
 header ("Location: http://www.untergang.de/index.php".$umleitung_ssl_ohne_wert."?".$urlParts[query]);
 exit;
 ?>
 
 |  
				| Letzte Aktualisierung ( 13.02.2014 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				27.09.2013 |  
			| Twitterkarte mit Bild für erweiterte Informationen. Codebeispiel 
 Ich hab schon mal eine Twitterkarte entworfen, Die wurde von Twitter abgelehnt. Aus meiner heutigen Sicht zurecht Zusatzinfo für Untergang.de tweetAktion: Alles wird neu.
 Anders wie bei Google's strukturierten Daten werden hier nicht die einzelnen html-tags  zusätzlich ausgezeichnet. Twitter will Metatags im Head der Webseite. Das komplizierte dabei waren die Bilder auf meiner dynamisch erzeugten Webseite. So hab ichs gecodet:
 Ausschnitt /components/com_content/content.html.php
 
 Jetzt muss der Metatag erzeugt werden. Das mach ich mit dem Templatemanager. Dort trage ich diesen Code ein:
<?php
 // displays Table of Contents
 HTML_content::TOC( $row );//text in Variable
 $textmitbild = $row->text;
 echo $textmitbild;
 //wird ein Artikel gezeigt?
 if ($task == "view")
 {
 //im Text Bild suchen
 //mosimage erzeugt zur Laufzeit
 $doc = new DOMDocument();
 @$doc->loadHTML($textmitbild);
 $tags = $doc->getElementsByTagName('img');foreach ($tags as $tag) {
 $twimage = $tag->getAttribute('src');
 //im $twimage steht jetzt die Bildaddresse
 }
 }
 
 $twimage ist natürlich eine globale Variable. Diese PHP-Scripte sind gefährlicher Murks. Nicht nachmachen ! Aber funktioniert,
<?php
 if (empty($twimage))
 {
 // Wenn keine Artikelseite  dann default Bildchen
 $twimage = $mosConfig_live_site ."/images/stories/default.png";
 }
 //das ist der Twitter- Metatag fürs Bild
 echo '<meta name="twitter:image" content="'.$twimage.'">';
 
 |  
				| Letzte Aktualisierung ( 29.09.2013 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				31.03.2013 |  
			| Twittercards meine metatags so anmelden 
 Meine Twitterkarte könnte so aussehen. Das sind die Metatags: Twitterkarte so solls werden
Meine Webseite wird jetzt von Twitter geprüft.<meta name="twitter:card" content="summary">
<meta name="twitter:url" content="http://www.untergang.de/">
<meta name="twitter:site" content="@dewomser">
<meta name="twitter:creator" content="@dewomser">
<meta name="twitter:title" content="Linux aus Worms">
<meta name="twitter:description" content="Linux Arduino Raspi und noch viel mehr Spielzeug.">
<meta name="twitter:image" content="http://www.untergang.de/images/stories/ich2.jpg">
 externer Link:Twitterkarte Vorschau
 externer Link:Twitterkarte anmelden
 2.April 2013 Email von Twitter : Das war nicht gut genug.
 25.September 2013 jetzt hats geklappt.
 |  
				| Letzte Aktualisierung ( 28.09.2013 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				22.01.2013 |  
			| So hab ich GeoIP in Piwik eingebunden 
 Die Webanalyse Software Piwik zeigt jetzt auch die Region und Die Stadt der Besucher meiner Webseite an. Wenn man mit einem Radius von 50 kM einverstanden ist, stimmt das auch. Beispiel: Ich wohne in Worms und es zeigt mir Heidelberg als Standort an. Piwik Zeigt Stadt und RegionEigentlich wäre es kein Meldung Wert, denn es hat so funktioniert wie es in der Anleitung steht.
 Ich hatte bedenken weil sich diese URL einfach per Klick ausführen lässt: http://piwik-url/misc/others/geoipUpdateRows.php . Nachdem ich mich an meiner Piwik-Installation abgemeldet habe, kommt aber die Meldung :
 You must be logged in as Super User to run this script  br>
Uff! doch sicher.
 |  
				| Letzte Aktualisierung ( 31.12.2013 ) |  |  | 
				
			| Geschrieben von   Administrator
			
			
						
				am:
				04.09.2012 |  
			| Stromverbrauch S0 Impulse zur Darstellung als Chartgrafik. PHP-Script 
 Meine Chartgrafik für die Serverleistung zuhause zeigt jetzt auch Datum und Uhrzeit der Messung an. Die S0 Daten  hole ich mir von einem Arduino, der einen Stromzähler abliest. Ein Cronscript holt die Daten im 4 Stundenrythmus ins Internet. und schreibt den aktuellen Messwert in eine Datei. Gleichzeitig wird eine Tabelle in einer MySQL Datenbank gefüttert. Aus dieser Tabelle rufe ich mir die 10 letzten Datensätze ab und bilde mittels PHP eine Png-Grafik. Das ist live !PHP-script zum Download: strom040912d.php.zip
 Vorgängerversion ohne Datum
 Aktuelle Messwerte im Popup-Fenster
 Info zur Skalierung : Y-Achse entspricht 0-250 Watt. Es gibt 10 Einheiten zu 25 Watt.
 |  
				| Letzte Aktualisierung ( 13.09.2015 ) |  |  | 
				
			| Geschrieben von   Administrator
			
			
						
				am:
				29.06.2012 |  
			| Google-Share-Knopf auf meiner Webseite eingefügt 
 Endlich kann man meine Webseite Untergang.de nicht nur die einzelnen Blogbeiträge twittern und Verlinken. Es geht jetzt auch mit Google Plus.  Während der Testphase waren die Buttons auch in meinen Blogs zu sehen, was eine erhebliche Ladezeitverlängerung für den Betrachter meiner Webseite bedeudete. Google Plus auf Untergang.deIch hab den Untergang.de jetzt so umgestaltet, dass die Buttons für Email. Drucken, PDF , Google+ , und Twitter nur noch im jeweiligen Artikel eingeblendet werden. Nach meinen Erfahrungen wurden diese Knöpfe im Blog nur selten benutzt. Ich kann jetzt aber selbst , nachdem ich was gebloggt habe, meine Seite bewerben.
 Über die gesicherte Verbindung (https) werden die Buttons für Google+ und Twitter nicht angezeigt, weils eben nur Content von Untergang.de anzeigen soll.
 |  
				| Letzte Aktualisierung ( 01.03.2013 ) |  |  | 
				
			| Geschrieben von   Administrator
			
			
						
				am:
				03.06.2012 |  
			| Chartgrafik  erzeugt mit PHP 
 
|  Stromverbrauch als Grafik | Grafische Anzeige des aktuellen Stromverbrauchs meines PCs (Server)
mittels eines Arduinos mit Ethernetshield. Benutzt ab ich ein PHP-Script, GD-Pugin und MySQL Datenbank Hier gehts um die Erzeugung der Chartgrafik aus aktuellen Daten.
Einen guten  Link um Charts zu erstellen.
Dieses Script passt zu:
Das PHP-script rufe ich mittels eines Cron- Eintrags auf, um Traffic einzuschränken.
 Die Anbindung an die Datenbank hab ich dazugescriptelt:
 |  
| 
<?php
 $ro = 0;
 mysql_connect("rdbms.strato.de", "U111111", "passw") or
     die("Keine Verbindung möglich: " . mysql_error());
 mysql_select_db("DB12345");$result = mysql_query("SELECT id,watt,zeit FROM watt ORDER BY `zeit` DESC LIMIT 0, 10");while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
 {
 $datenr[$ro] = ($row["watt"]);
 $ro++;
 }
 $daten = array_reverse($datenr);
 // Flip ist nix gut $daten = array_flip($daten);
 //print_r($daten);
 mysql_free_result($result);// Diagramm Werte
 //$daten wird ersetzt durch Array aus Datenbank
 //$daten=array(10,125,100,238,200,175,100,200,250,225,125);// PNG-Grafik definieren
 header("Content-type: image/png");// Breite/Höhe des Diagramm
 $imgBreite=250;
 $imgHoehe=250;// Image-Objekt erzeugen und Farben definieren
 $bild=imagecreate($imgHoehe, $imgBreite);
 $farbeWeiss=imagecolorallocate($bild, 255, 255, 255);
 $farbeGrau=imagecolorallocate($bild, 192, 192, 192);
 $farbeBlau=imagecolorallocate($bild, 0, 150, 255);
 $farbeHellblau=imagecolorallocate($bild, 0, 200, 255);// Rand für die Grafik erzeugen
 imageline($bild, 0, 0, 0, 250, $farbeGrau);
 imageline($bild, 0, 0, 250, 0, $farbeGrau);
 imageline($bild, 249, 0, 249, 249, $farbeGrau);
 imageline($bild, 0, 249, 249, 249, $farbeGrau);// Raster erzeugen
 for ($i=1; $i<count($daten); $i++){
     imageline($bild, $i*25, 0, $i*25, 250, $farbeGrau);
     imageline($bild, 0, $i*25, 250, $i*25, $farbeGrau);
 }// Liniendiagramm erzeugen
 //for ($i=0; $i<count($daten); $i++){
 //imageline($bild, $i*25, (250-$daten[$i]),
 //    ($i+1)*25, (250-$daten[$i+1]), $farbeBlau);
 //}
 // Säulendiagramme erzeugen
 for ($i=0; $i<count($daten); $i++){
     imagefilledrectangle($bild, $i*25, (250-$daten[$i]),
     ($i+1)*25, 250, $farbeBlau);
     imagefilledrectangle($bild, ($i*25)+1,
     (250-$daten[$i])+1,
     (($i+1)*25)-5, 248, $farbeHellblau);
 }// Diagramm ausgeben und Grafik
 // aus dem Speicher entfernen
 imagepng($bild);
 imagedestroy($bild);?>
 
 |  |  
				| Letzte Aktualisierung ( 03.06.2012 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				22.04.2011 |  
			| Das phpscript zeigt ein regelmässig wiederkehrendes Datum an Ja, ich weiss, das PHP-Script das immer den 2.Donnerstag im Monat anzeigt ist noch nicht perfekt.
  Es wird wohl zum Jahreswechsel falsch anzeigen, aber sonst erfüllt es seinen Zweck. Verbesserungen sind willkommen. Vielleicht bau ich ja noch mal dran rum.Mit den rot gekennzeichneten Zusätzen soll jetzt der Jahreswechsel auch funktionieren.Jahreswechsel approved: Stefan Höhn 01.01.2012 .
 
 
 
<?php
 /**
 *
 *  Gets the first weekday of that month and year
 *
 *  @param  int   The day of the week (0 = sunday, 1 = monday ... , 6 = saturday)
 *  @param  int   The month (if false use the current month)
 *  @param  int   The year (if false use the current year)
 *
 *  @return int   The timestamp of the first day of that month
 *
 **/
 function get_first_day($day_number=1, $month=false, $year=false)
 {
 $month=($month === false) ? strftime("%m"): $month;
 $year=($year === false) ? strftime("%Y"): $year;
 $first_day = 8 + ((7+$day_number - strftime("%w", mktime(0,0,0,$month, 1, $year)))%7);
 return mktime(0,0,0,$month, $first_day, $year);
 }
 $monat=date("m");
 $jahr=date("y");// $datum_live = date("d,m,y");
 // $datum_termin=strftime("%d-%m-%Y", get_first_day(4, $monat));
 // echo "datum_live =".$datum_live."datum_termin=".$datum_termin;$tages_differenz = date("d")-strftime("%d", get_first_day(4, $monat));// echo $tages_differenz;if ($tages_differenz > 0){
 $monat = $monat + 1;
 }if ($monat > 12){
 $monat = 1;
 $jahr = $jahr +1;}
 // this will output the 2. Donnerstag of
 // aktuelles Monat und Jahr(wed 03-01-2007)echo "Donnerstag ".strftime("%d-%m-%Y", get_first_day(4, $monat , $jahr));
 // Script ist hier zu Ende.
 ?>
 
 Mach damit was du willst.
 |  
				| Letzte Aktualisierung ( 14.02.2014 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				30.03.2011 |  
			| PNG Bild mit PHP auf einem Linuxserver erzeugen 
  Das Bildchen mit der aktuellen Temperatur von Worms ist neu auf meiner Webseite. Und hier beschreibe ich wie ichs gemacht habe: Wie man sich die Wetterdaten vom FH-Server lädt  und als Text ausgibt hab ich hier schon mal gezeigt.
 Um diesen Wert in ein PNG- Format zu verwandeln braucht PHP die GD Option. Bei diesem Script muss der Schriftart  arial.ttf in den gleichen Ordner kopiert werden wie das Script. Diesen Truetype- Font findest du auf deinem Rechner oder im Internet.
 Das Script muss natürlich noch als PHP mit entsprechendem TAG ausgezeichnet werden. Mein Script entwickelt sich aus einem Script der Seite php.net .
 Hier das PHP-Script von mir:
 
<?PHP
 // Set the content-type
 header('Content-type: image/png');// Create the image
 $im = imagecreatetruecolor(165, 68);// Create some colors
 $white = imagecolorallocate($im, 0, 0, 255);
 $grey = imagecolorallocate($im, 158, 158, 158);
 $black = imagecolorallocate($im, 255, 255, 255);
 imagefilledrectangle($im, 0, 0, 164, 67, $white);// Ich hol mir die Daten jetzt (09.02.2012) mittels Cron-Job:
 // mit cron-tab: cd /da_wos_hin_soll/;wget-N http://wetter.fh-worms.de/raw.php
 // früher: $wetter = file_get_contents("http://wetter.fh-worms.de/raw.php");
 $wetter = file_get_contents("raw.php");$array_1 = split ( '[;]', $wetter );
 $text1= 'Temperatur Worms:';
 $text2= $array_1[3] . 'Grad Celsius ';
 $text3= 'WetterstationFH-Worms';// The text to draw
 // $text = 'Testing...';
 // Replace path by your own font path
 $font = 'arial.ttf';// Add some shadow to the text
 imagettftext($im, 10, 0, 11, 21, $grey, $font, $text1);
 imagettftext($im, 10, 0, 11, 41, $grey, $font, $text2);
 imagettftext($im, 8, 0, 11, 61, $grey, $font, $text3);
 // Add the text
 imagettftext($im, 10, 0, 10, 20, $black, $font, $text1);
 imagettftext($im, 10, 0, 10, 40, $black, $font, $text2);
 imagettftext($im, 8, 0, 10, 60, $black, $font, $text3);// Using imagepng() results in clearer text compared with imagejpeg()
 imagepng($im);
 imagedestroy($im);
 ?>
 
 Mach damit was du willst, und gib mir nicht die Schuld.
 |  
				| Letzte Aktualisierung ( 16.02.2014 ) |  |  | 
				
			| Verfasst von   Stefan Höhn
			
			
						
				am:
				29.06.2006 |  
			| USB-Webcam für die Homepage mit Linux 
 Anleitung zum Selbstbau einer Webcam auf der eigenen Homepage Voraussetzung:
 Webserver, ein dynamischer DNS zB DynDNS und Linux als Betriebssystem auf dem Heimrechner. Diese Anleitung hab ich mit SUSE 9.1 und SUSE 10.1 getestet.Die Webcam it eine Terratec Terracam USB. (Terracam USB Pro mag der Kernel überhaupt nicht)
 Vorteil :
 ohne Webung , ohne Trafic auf die Homepage, selbst gemacht daher individuell anpassbar.
 Meine Livecam:
 hier
 
 
 Und so funktioniert die Webcam:
 
 1. Bilder erzeugen
 Das paket xawtv installieren. In dem Paket ist ein Programm das heisst Webcam.Wenn man jetzt in die Konsole man webcam eingibt wird die Funktion erklärt.
 Meine .webcamrc sieht so aus:
 
 [grab]
 device = /dev/video0
 text = "=webcam %Y-%m-%d %H:%M:%S"=
 fg_red = 255
 fg_green = 255
 fg_blue = 255
 width = 320
 height = 240
 delay = 3
 wait = 0
 norm = pal
 rotate = 0
 top = 0
 left = 0
 bottom = -1
 right = -1
 quality = 75
 trigger = 0
 once = 0
 [ftp]
 dir  = /srv/www/htdocs/webcam/
 file = webcam.jpeg
 tmp  = uploading.jpeg
 passive = 0
 debug = 0
 auto = 0
 local = 1
 ssh = 0
 
 
 
 Im Ordner /srv/www/htdocs/webcam/(root vom Apache ist .../htdocs/) werden jetzt ständig neue Bildchen webcam.jpeg erzeugt. Die FTP-Funktion ist abgeschaltet, dadurch entsteht niemals Traffic vom PC zur Homepage, sondern immer nur vom Betrachter der Webseite zum PC zuhause.
 Zum Testen der Funktion einfach mal 127.0.0.1/webcam/webcam.jpeg in den Browser eintippen. Es muss ein Bild zu sehen sein.
 
 2. Bilder anzeigen
 
 Ich benutze ein Java Applet. G3Webcam.class
 Das Applet is Freeware und gibts bei http://www.webcam-software.de/deutsch/technologie.html
 Das Applet nach /srv/www/htdocs/webcam/ kopieren
 
 
 Es geht natürlich auch ein Javascript oder der Metatag Refresh.
 
 3. In Mambo einbauen
 mosaddphp muss aktiviert sein., um ein eigenes PHP-script einzubinden. Jetzt auf der Seite die die Webcam anzeigen soll einfügen:
 
 Geschweifte Klammer auf mosaddphp:fsock.php geschweifte Klammer zu
 
 
 fsock.php sieht so aus:
 
 if($fp = fsockopen ("=lololulu.homelinux.com"=, 80, $errno, $errstr, 200)){
 echo "=Ja mein Server ist online"= ;
 ?>
 // Aplett configuration hier eifügen.
 // Achtung der verwendete Server heisst hier lololulu.homelinux.com
 
 }else{
 echo "=Ich bin nicht zuhause oder meine Webcam ist nicht an"=;
 }
 $fp = @ null; //Don't use fclose() here. If the connection was refused it will throw an error
 
 ?>
 
 Hier wird überprüft ob der Rechnerr lololulu.homelinux.com online ist und startet dann das Applet.
 
 4.Automatischer Start
 
 Beispiel:
 im Ordner /home/lolulu/.kde/Autostart einfach webcam hinzufügen.
 
 Hoffentlich ist das einigermaßen verständlich. Viel Spass damit!
 
 
 |  
				| Letzte Aktualisierung ( 03.07.2011 ) |  | 
 |