PHP Kurs Logo  
 
Buttons PHP Kurs - Kapitel Trennlinie Was brauche ich ? Trennlinie Kontakt Trennlinie Impressum & Datenschutz Buttons
 
 
Menu
Allererste PHP Schritte
- Webserver Installation
- PHP Editor Installation

PHP Grundlagen
- PHP Grundwissen
- Mein erstes Programm
- Kommentare einfügen
- Variablen
- PHP+HTML mischen
- If Abfragen
- Rechenarten
- Arrays
- Schleifen
- Funktionen
- Klassen
- Includes
- Sessions und Cookies
- Login mit Sessions
- Login mit Datenbank
- Referer auslesen
- Wert aus Datenbank
- Variablen übergeben

MySQL Grundlagen
- Was ist das ?
- Erste Schritte
- Verbindung herstellen
- Einfache SQL Befehle
- SQL Injection

Häufig gefragt
- Was ist Adwords ?
- Interessante Links
- Wasserzeichen mod_rewrite
- Thumbnails erstellen
- PHP Gästebuch
- PHP Header
- Webseiten auslesen
- Socket Verbindungen
- E-Mail Adressen prüfen
- E-Mails versenden
- $_GET & $_POST
- Datenbank sichern
- Server DDOS Angriffe Abwehren
- Webhosting - Worauf ist zu achten ?

Interessante Artikel


Webseiten auslesen mit file();

Wie kann man andere Webseiten auslesen ? Dafür gibt es mehrere Möglichkeiten. Die einfachsten will ich hier mal präsentieren. Zum einen kann dies über den Befehl file(); realisiert werden:

<?php
    $_url 
"http://de.wikipedia.org/wiki/Hauptseite";

    
$_buffer implode(''file($_url));
    echo 
$_buffer;
?>

Mit Hilfe des File Befehls wird die Seite an der Zielurl eingelesen und mit implode in ein echo(); fähiges Format umgewandelt. Dann wird die Seite ausgegeben (der Inhalt). Dies kann unter umständen bei euch auf eurem Webspace nicht aktiviert sein. Persönlich würde ich eher zu der Curl Variante greifen, da Sie wesentlich mehr Funktionen bietet.

Webseiten auslesen mit curl

Dies ist die elegantere Art, vorallem auch weil man $_POST Daten mit übergeben kann und das ganze viel mehr wie einen regulären Seitenaufruf aussehen lassen kann.

Weitere Informationen über Curl erhaltet Ihr direkt auf php.net (Klick).

<?php
# -------------------------------------------------------------------
# (c) Charles Imilkowski
#
# Funktion: lädt mit Curl eine andere URL ein
# -------------------------------------------------------------------
# $url      = Internetadresse die eingelesen werden soll
# $postdata = Die Daten die per $_POST mitgesendet werden sollen,
#              das Format entspricht einem $_GET String, wie man ihn
#              an eine URL anfügen würde
# -------------------------------------------------------------------

    
function HomepageLaden($url$postdata)
        {
        
$agent "Meine Browserkennung v1.0 :)";
        
$header[] = "Accept: text/vnd.wap.wml,*.*";
        
$ch curl_init($url);

        if (
$ch)
            {
            
curl_setopt($ch,    CURLOPT_RETURNTRANSFER1);
            
curl_setopt($ch,    CURLOPT_USERAGENT$agent);
            
curl_setopt($ch,    CURLOPT_HTTPHEADER$header);
            
curl_setopt($ch,    CURLOPT_FOLLOWLOCATION1);

            
# mit den nächsten 2 Zeilen könnte man auch Cookies
            # verwenden und in einem DIR speichern
            #curl_setopt($ch,    CURLOPT_COOKIEJAR, "cookie.txt");
            #curl_setopt($ch,    CURLOPT_COOKIEFILE, "cookie.txt");

            
if (isset($postdata))
                {
                
curl_setopt($ch,    CURLOPT_POST1);
                
curl_setopt($ch,    CURLOPT_POSTFIELDS$postdata);
                }

            
$tmp curl_exec ($ch);
            
curl_close ($ch);
            }
        return 
$tmp;
        }

    
$_url "http://de.wikipedia.org/wiki/Hauptseite";
    
$_buffer HomepageLaden($_url"");
    echo 
$_buffer;
?>


RSS/XML Feeds auslesen und verwenden

RSS Feeds werden zumeist für Reader Programme bereit gestellt, damit man direkt unter Windows lesen kann, was für neue Nachrichten es auf einer bestimmten Webseite gibt. Hier streiten sich die Geister, ob man diese Nachrichten auch von einer anderen Webseite lesen darf. Der Geist von RSS ist es Nachrichten soweit wie möglich zu verteilen. Ich würde hier raten im Einzelfall gerade bei kleineren Webseiten betreibern mal nachzufragen, ob man diese Feeds auslesen darf in PHP.

Hier lesen wir zum Beispiel den XML Feed von Wetter.com aus.

<?php
# -------------------------------------------------------------------
# (c) Charles Imilkowski
#
# Funktion: lädt einen XML/RSS Feed und speichert das Objekt als Array
# -------------------------------------------------------------------

    
function object2array($object)
        {
        
$return NULL;

        if(
is_array($object))
            {
            foreach(
$object as $key => $value)
            
$return[$key] = object2array($value);
            }
        else
            {
            
$var get_object_vars($object);

            if(
$var)
                {
                foreach(
$var as $key => $value)
                
$return[$key] = object2array($value);
                }
            else
                {
                
# strval and everything is fine
                
return strval($object);
                }
            }
        return 
$return;
        }

    
$_feed "http://wetter.com/wetter_rss/wetter.xml";
    
$xml_obj simplexml_load_file ($_feed);
    
$xml_arr object2array($xml_obj);

?>

In diesem Beispiel habe ich noch eine Funktion eingefügt, die aus einem Objekt ein Array macht. Ihr habt dann die Daten vom XML/RSS Feed sowohl als Objekt, als auch als Array vorliegen. Entscheidet selbst womit Ihr selbst weiterarbeiten wollt und womit nicht ;-)

Achtung: das Auslesen von fremden Webseiten sollte immer abgesprochen werden. Einfach fremde Inhalte einzubinden kann unter umständen eine Copyrightverletztung sein und viele teure Probleme nach sich ziehen. Schreibt dem Homepage Besitzer eine E-Mail und bittet um Erlaubnis !






<<<< zurück Kapitelauswahl vorwärts >>>>






Content
 
  Bottom Design  

PepperTools.de Software Download | Software Shop
PepperTools Software Shop