Ankündigung

Einklappen
Keine Ankündigung bisher.

Liste erstellen mit preg_match

Einklappen

Neue Werbung 2019

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

  • Liste erstellen mit preg_match

    Guten Abend Leute!

    Ich bin ein ziemlich blutiger Anfänger, wenn es um .php geht und google-missbrauchen bringt manchmal auch nichts.
    Ich hoffe ihr könnt mir helfen!

    Idee:
    Ich wollte eigentlich per Datenbank die Subdomain(e) meines Hosters auslesen.
    Um dann eine Liste ausgeben zu können mit Titel und Link zu den Webseiten.

    Problem 1:
    Jedoch ist es ein Problem, eine direkte Verbindung zur DB des Hosters zu bekommen/aufbauen. Aus diesen Grund gibt es eine Art API, die die Webseiten samt URL in einer Datei auflistet.

    In der API/Datei steht dann folgendes:
    Titel: Deine Seite
    URL: http://www.deine-seite.hoster.org
    ...

    Vorschlag:
    Mir wurde vorgeschlagen per preg_match Titel und URL auszulesen und dann eine Liste zu erstellen.

    Problem 2:
    Außer Datenbanken auffüllen/auslesen und paar andere Dinge, kann ich sowas nicht bzw. die Tutorials haben mir keine Klarheit beschafft.
    Bis jetzt kann ich nur einen Eintrag auflisten, aber nicht alle andere.

    Ansatz:
    PHP-Code:
    <?php 

    $sites 
    = @file_get_contents("http://www.Hoster.org/api/site-listing.php");
    preg_match_all('/Titel\: (.+)/i'$sites$site_titel);
    preg_match_all('/URL\: (.+)/i'$sites$site_url);

    echo 
    "<li><a href='";
    echo 
    $site_url[1][0];
    echo 
    "' target='_blank'";
    echo 
    "title='";
    echo 
    $site_titel[1][0];
    echo 
    "'>";
    echo 
    $site_titel[1][0];
    echo 
    "</a></li>";
    ?>

    Frage:
    Wie müsste ich diesen "Script" verändern um alle Einträge auflisten zu können? bzw. Wie lasse ich wirklich alle Einträge aus der API-Datei auslesen und auflisten?


    Ich würde mich wirklich ultra freuen, wenn jemand wüsste, wie ich diesen Script funktionstüchtig bekomme.


    Mit freundlichen Grüßen
    Unbekannt

  • #2
    Wie sieht der Inhalt der Datei aus, gibt es ein Trennzeichen für einzelne Sites?
    "[URL="http://www.youtube.com/watch?v=yMAa_t9k2VA&feature=youtu.be&t=25s"]Mein Name ist Lohse, ich kaufe hier ein.[/URL]"

    Kommentar


    • #3
      http://www.Hoster.org/api/site-listing.php scheint es garnicht zu geben.

      Mach mal den Klammeraffen vor file_get_contents raus und schalte dein error reporting ein.
      [PHP]if ($var != 0) {
      $var = 0;
      }[/PHP]

      Kommentar


      • #4
        @Chriz:
        Tut mir Leid, ich hab vergessen, wie es aussieht.

        Sieht so aus:
        PHP-Code:
        TitelProjekt ABC
        URL
        http://projekt-abc.hoster.org
        TitelKeksig
        URL
        http://keksig.hoster.org
        TitelWelt abc
        URL
        http://welt-abc.hoster.org 
        @Wolla:
        Tut mir auch Leid, ich habe vergessen euch zu sagen, dass hoster.org erfunden ist. Ich arbeite gerne mit abstrakten URLs, damit einiges "verdeckt" bleibt. Falls es euch was ausmacht, bitte mitteilen. q_q

        Mit freundlichen Grüßen
        Unbekannt

        Kommentar


        • #5
          Mit file() kannst du die Datei zeilenweise auftrennen. Du durchläufst die Datei in einer for-Schleife einfach, erhöhst den Zählerwert aber immer um 2 (statt um 1). Dann hast du mit $i und $i+1 die Zeile für Titel und URL. Die kannst du mit explode() auf den Doppelpunkt jetzt einfach auftrennen. Sollte kein Ding sein, den Code schreiben tu ich dir nicht, verbessern gern.
          "[URL="http://www.youtube.com/watch?v=yMAa_t9k2VA&feature=youtu.be&t=25s"]Mein Name ist Lohse, ich kaufe hier ein.[/URL]"

          Kommentar


          • #6
            Zitat von Unbekannt Beitrag anzeigen
            Tut mir auch Leid, ich habe vergessen euch zu sagen, dass hoster.org erfunden ist. Ich arbeite gerne mit abstrakten URLs, damit einiges "verdeckt" bleibt. Falls es euch was ausmacht, bitte mitteilen. q_q
            Prinzipiell ok aber dafür gibt es example.com, example.org, example.net und die TLD .example

            Die sind für diese Zwecke reserviert, so dass nicht versehentlich fremde Domains verlinkt werden.
            [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
            [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

            Kommentar

            Lädt...
            X