PHP & Json

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP & Json

    Hallo Leute,

    Ich bin neu hier.

    Da ich ganz langsam am verzweifeln bin. Entweder bin ich blöd, zu alt oder einfach nur blind.


    Vielleicht kann mir jemand da helfen.


    Vorher Ablauf.

    Ich beziehe über VVO Sachsen Daten . Bis zur Umstellung funktionierte mein Anzeiger perfekt.

    Über den Aufruf der Webseite zog sich eine Script alles im Hintergrund und stellte die Daten sauber dar.


    Stand jetzt.

    VVO hat umgestellt und die Daten werden nicht mehr angezeigt.


    Daten werden nicht mehr angzeigt mit direkter zahle bzw auf ID Basis.

    Rufe ich den VVO Link auf zeigt es alles .
    doch meine Script sagt Nö will ich nicht.


    Kann mir einer vielleicht helfen oder ein Tip geben `?

    Danke euch.


    Hier mein problemkind


    ausgabe = > webseite


    <!-- css start -->
    <link rel="stylesheet" href="styles/main.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
    <!-- css end -->
    </head>
    <body>
    <div id="container">
    <div id="content-left">
    <div id="info">
    INFO
    </div>
    <div id="ads">
    WERBUNG
    </div>
    </div>
    <div id="content-right">
    <div id="arrivals" class="container-fluid" ng-controller="abfahrtsZeitenCtrl">
    <div class="col-md-12" id="arrival-header">
    <div class="col-md-3">Linie</div>
    <div class="col-md-6">Richtung</div>
    <div class="col-md-3">Abfahrt</div>
    </div>
    <div class="col-md-12 arrival" ng-repeat="arrival in arrivals">
    <div class="col-md-3">{{arrival[0]}}</div>
    <div class="col-md-6">{{arrival[1]}}</div>
    <div class="col-md-3">{{arrival[2]}} Min.</div>
    </div>
    </div>
    </div>
    </div>

    <!-- scripts start -->
    <script src="scripts/fixHeight.js"></script>
    <script src="scripts/abfahrtsZeitenAppMain.js"></script>
    <script src="scripts/abfahrtsZeitenCtrl.js"></script>
    <script src="scripts/abfahrtsZeitenService.js"></script>
    <!-- scripts end-->

    ########################


    config.php
    <?php

    define('HSTID', "36070700");

    ####################

    index
    <?php

    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(-1);

    require_once __DIR__ . "/config.php";
    require_once __DIR__ . "/Connector/VVOConnector.php";
    require_once __DIR__ . "/Services/Haltestelle.php";

    use Connector\VVOConnector;
    use Services\Haltestelle;

    $connector = new VVOConnector();
    $haltestelle = new Haltestelle($connector);

    echo $haltestelle->holeZeitenFuerHaltestelle(HSTID);

    ################

    VVOConnector


    <?php

    namespace Connector;

    class VVOConnector
    {
    public function holeZeiten($hstID)
    {
    $url = $this->baueVerbindungsURL($hstID);
    $zeiten = \json_decode(\file_get_contents($url));
    return $zeiten;
    }

    private function baueVerbindungsURL($hstID)
    {
    return "https://webapi.vvo-online.de/dm?format=json&stopid=36070700";
    /* --> eiegenlich https://webapi.vvo-online.de/dm?form...n&stopid=hstID
    }
    }


    ############################


    haltestellen
    <?php

    namespace Services;

    class Haltestelle
    {
    private $connector;

    public function __construct($connector)
    {
    $this->connector = $connector;
    }

    public function holeZeitenFuerHaltestelle($hstID)
    {
    return json_encode($this->connector->holeZeiten($hstID));
    }
    }


    ##################
    abfahrtsZeitenCtrl.js

    var app = angular.module('abfahrtsZeitenApp');

    app.controller('abfahrtsZeitenCtrl', ['$scope', '$interval', 'abfahrtsZeitenService', function($scope, $interval, service){
    var showArrivals = function(){
    console.log("hole neue Zeiten");
    service.getArrivals().then(function(arrivals){
    $scope.arrivals = arrivals;
    });
    };

    showArrivals();

    $interval(showArrivals, 60*1000);
    }]);
    #########################

    var app = angular.module('abfahrtsZeitenApp');

    app.service('abfahrtsZeitenService', ['$http', '$q', function($http, $q){

    var getArrivals = function(){
    var deferred = $q.defer();

    $http.get("/api").success(function(arrivals){
    deferred.resolve(arrivals);
    });

    return deferred.promise;
    };

    return {
    getArrivals: getArrivals
    }
    }]);


    ######
    ######
    ZUm Abschluß es läuft auf keinen apache oder lightttp.

    Ich nutze Nginx auf einem Raspebrry zero
    Zuletzt geändert von niwu; 10.12.2021, 12:20.
Lädt...
X