Bahn RIS aulesen

Prima. Das bedeutet, PHP springt jetzt schon mal auf seinen Code an. Das bedeutet, dir fehlt ein weiteres Script, in dem die Funktion IPS_GetObject() definiert ist.

Wenn man Google danach fragt, bekommt man die Seite, von der du das Script hast bzw. seine Dokumentation: http://www.ip-symcon.de/service/dokumentation/befehlsreferenz/objektverwaltung/ips-getobject/

Sprich, du brauchst das Packet, in dem dieser IPS-Kram liegt: http://www.ip-symcon.de/service/downloads/

Offensichtlich ist das aber nur mit einer Lizenz verwendbar.
 
Hallo zusammen,

sorry war übers Wochenende weg...

Danke erstmal für eure hilfreichen und schnellen Antworten. Hab mir das mal angeschaut, also 100 Euro dafür ausgeben lohnt ja nicht wirklich für meine Idee...

Gibt es vielleicht eine andere Möglichkeit, die auf der Bahn-Ris Seite angegebenen Daten "auszulesen" und bei mir anzuzeigen?

Grüße
 
Google findet nix außer einigen Beiträgen, dass die Bahn es eben verpeilt hat beim letzten Redesign eine vernünftige API einzubinden... Von daher würde ich sagen, dass es da nicht mal eben so möglich ist.
 
Naja, du könntest das nachbauen, was die als PHP-Scripte kostenpflichtig zur Verfügung stellen.

Du hast da zwar keinen Quelltext, aber so schwer stelle ich mir das jetzt auch nicht vor.

Du brauchst erstmal nen PHP-HTTP-Client wie z.B. Snoopy. Dem musst du die URL

Code:
http://reiseauskunft.bahn.de/bin/bhftafel.exe/dn?

übergeben, zusammen mit GET-Parametern. Dann bekommst du Results zurück, die vermutlich noch irgendwie aufbereitet werden müssen. So wie es für mich aussieht, müsste man den Result einfach an die Methode fetch() übergeben. Das ganze könnte ungefähr so aussehen:

PHP:
<?php
error_reporting(E_ALL | E_STRICT);
ini_set("display_errors", 1);

require "bahn.php";
require "Snoopy.class.php";

$bahn = new bahn("München Hbf");

$snoopy = new Snoopy();
$snoopy->fetchtext($bahn->buildQueryURL());

$fahrten = $bahn->fetch( $snoopy->results );

?>
<pre>
<?php
var_dump($fahrten);
?>
</pre>

Keine Garantie, dass das funktioniert ;-)

EDIT:

So funktioniert es besser:

PHP:
<?php
error_reporting(E_ALL | E_STRICT);
ini_set("display_errors", 1);
 
require "bahn.php";
require "Snoopy.class.php";
 
$bahn = new bahn("München HBF");
 
$snoopy = new Snoopy();
$snoopy->fetch($bahn->buildQueryURL());

$results = $snoopy->results;
$bahn->fetch( $snoopy->results );
 
?>
<pre>
<?php
var_dump($bahn->timetable);
?>
</pre>
 
Zuletzt bearbeitet:
Zurück