foreach - Schleifen und arrays

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

  • #76
    Damit meinte ich nicht, dass Du noch nicht weiter als bei "Hallo Welt" bist, sondern mehr den Unterschied. Funktionen benötigst Du eher, allein schon um Wiederholungen zu vermeiden. Ohne geht es halt auch, in dem man Zeile um Zeile jeden Arbeitsschritt notiert. Mit Funktionen wird es einfacher und kürzer.

    Ohne Klassen geht es auch, so lange Du nur für Dich schreibst, brauchst Du nicht unbedingt Klassen, zumal der Code ohne Klassen häufig kürzer und übersichtlicher ist. Wenn Du aber mit anderen Programmierern zusammen an einer professionellen Anwendung arbeiten möchtest, wird es ohne OOP nicht mehr abgehen.

    Kommentar


    • #77
      Noch ne Frage

      es läuft soweit alles ganz gut, allerdings habe ich gerade den Fall, dass der FAZ-Politik feed nicht erreichbar ist. Da hattest Du doch eine Fehlermeldung eingebaut, die kommt aber nicht. Hast Du eine Idee, woran das liegen könnte? Der feed heißt:

      http://www.faz.net/rss/aktuell/politik/

      und kam bisher ohnehin sehr unzuverlässig. Im Moment stehen drei Meldungen drin, aber einen Fehler im Quelltext erkenne ich nicht.

      Gruß
      newbie1955
      Zuletzt geändert von newbie1955; 16.06.2013, 18:49.

      Kommentar


      • #78
        Bei mir ist der erreichbar, nur so etwas schafft der nicht anzuzeigen, da kommen nach wie vor nur Error-Mitteilungen, an den beiden BEL Steuerzeichen hängt der sich wohl auf. Die werden hier nicht sichtbar, deshalb habe ich an den Stellen [BEL] eingefügt.

        Code:
        <description>... border="0" title="„100% sozial“: Die ..." alt="„100% sozial“: Die ... m Zusammen[BEL]gehen  [BEL]soziale ...
        Man kann ja nicht für jeden unvorhersehbaren Mist eine Ausnahme schreiben. Man könnte schon, doch der Aufwand rechnet sich ja nicht. Wer kommt denn auf so eine Idee da so etwas in Alt-Attribute zu stecken und ein Stück weiter noch BEL-Steuerzeichen einzufügen?

        Es tut nicht notwendig, hier jeden Schrottfeed besprechen zu wollen.

        Kommentar


        • #79
          Nein,

          ich will hier auch nicht jeden Schrottfeed besprechen, wollte nur wissen, warum dann die Fehlermeldung, die Du ja eingebaut hast, nicht kommt. Bricht der dann einfach ab? EIgentlich müsste die Funktion doch bis an die Stelle kommen, wo sie merkt, dass da kein Inhalt gelesen wurde...

          Ich muss Dich auch noch mit einer zweiten Sache nerven, die links zum Spiegel funktionieren nicht mehr. In denen kommt ein "#" vor, das anscheinend entfernt wird.

          ist das an dieser Stelle im Code? (ich habe bisher nur preg_replace, aber nix mit callback verwendet):

          PHP-Code:
          daten preg_replace_callback("/(&[#a-z0-9]+;)/"
          Zuletzt geändert von newbie1955; 16.06.2013, 21:24.

          Kommentar


          • #80
            Bei mir wird der Spiegel ausgegeben, ein # kann vorkommen und wegen unerlaubten Steuerzeichen wie beim anderen Feed wurden schon Webseiten von Virenscannern gesperrt oder von der Google-Suche als gefährlich eingestuft und mit Warnhinweisen versehen. Sei zufrieden, wenn es bei denen noch nicht so ist, auch wenn da Steuerzeichen wie BEL eingebaut wurden, welche ein hörbares Signal erzeugen sollen, wenn ein Dokument an den Drucker gesendet wird.

            Wenn ein Feed nicht geladen werden kann, so wird nach wie vor ein eigener Hinweis vom Script ausgegeben. Habe es extra gestern noch einmal getestet, in dem ich eine URL falsch eingab. Keine Fehlermeldung wird eventuell ausgegeben, wenn nur der Header vom Feed geladen werden kann oder so, weil der Rest Schrott ist.

            Und wenn dann bei error_reporting(0) statt error_reporting(E_ALL) verwendet wird, dann bleibt das Dokument leer. Aber Du kannst über den Else-Zweig noch die eine oder andere eigene Fehlermitteilungen hinzufügen oder ergänzen, daran hindert Dich ja keiner. Da werde ich bei meinen auch noch eine ergänzen, ist wohl angebracht.

            PHP-Code:
                    } else { echo "<br>Mehrere Titel oder Items scheinen fehlerhaft zu sein.\n";
                    }
                } else { echo 
            "<br>Feed konnte nicht geladen werden!\n";
                }

            So langsam aber sicher habe ich die Nase jedoch gestrichen voll. Ist ja nicht mit einer Zeile erledigt, ich muss ja immer die Zip-Archive erneuern und habe schon die Dateien von den Archiven verwechselt oder eigene Notizen mit Pfadangaben von Lokalhost vergessen zu entfernen, die niemand sehen soll, also auch immer wieder einen Testdownload mit Nachkontrolle durchführen. Und alles für ein Script ohne finanziellen Nutzen. Eventuelle um ein wenig den Bekanntheitsgrad zu steigern, doch dafür müsste man es auch noch für die gängigsten CMS aufbereiten.
            Wie man zum Beispiel bei WordPress einfaches Script als Plugin einbindet, das weiß ich zwar, doch wenn es etwas komplexer wird, müsste ich es auch erst wieder testen. Schon würde wieder das nächste Buch fällig, denn nur mit den Anleitungen aus dem Web wird es wohl nicht getan sein. So ist das halt.
            Zuletzt geändert von Melewo; 17.06.2013, 06:08.

            Kommentar


            • #81
              Spiegel

              Das ist ein Missverständnis. Bei mir ist der Spiegel auch als feed erreichbar, aber wenn ich dann auf die einzelnen ausgegebenen Links gehe, wird die Seite beim Spiegel nicht gefunden, weil bei meiner Ausgabe ein # entfernt wurde, das im Original aber steht. Also muss es ja vor der Ausgabe durch irgendwas entfernt werden (filterelinks?).

              Ich verstehe, dass Dich die viele Arbeit mit dem Script nervt. Leider verdiene ich mit meiner Seite auch keinen cent, sonst würde ich Dir ja was abgeben.

              Gruß newbie1955

              Kommentar


              • #82
                Ja, sehe ich jetzt auch. Doch eine Raute oder Hash # leitet eigentlich nur einen Anker innerhalb eines Dokuments ein

                HTML-Code:
                <a href="#springe_zu-Absatz_zwei">Absatz 2</a>
                und die Seite sollte dennoch erreichbar sein, gleich ob so oder so.

                HTML-Code:
                "http://...wissen-vor-a-906066.html#ref=rss"
                "http://...wissen-vor-a-906066.html"
                Was durch die Filterung passiert, das ist jedoch, dass nur # entfernt wird und der Rest bleibt und ein Dokument mit der Endung htmlref=rss nicht existiert. Doch wenn Du das einfach nur in der Zeichenklasse mit hinzufügst,

                Code:
                [^a-z0-9_\/=.:;&#?-]
                und zusätzlich noch htmlspecialchars vergessen würdest, dann würde auch so etwas durchgehen:

                PHP-Code:
                echo "&#x3c;&#x53;&#x63;&#x68;&#x61;&#x64;&#x63;&#x6f;&#x64;&#x65;&#x3e;";

                // <Schadcode> 
                Dann brauchte bald mal gar nichts mehr gefiltert werden. Wenn, dann solltest Du Dir da noch einen zweiten Ausdruck entwickeln, der mit der # auch den nachfolgenden Rest entfernt, jedoch auch nicht mehr als halt diesen Rest entfernt.

                So und bevor Du dumm stirbst, solltest Du Dir unbedingt Punkt zwei aufklappen und durchlesen:

                Dies geschieht aus zwei Gründen:
                Hash-Fragmente werden niemals als Teil einer HTML-Anfrage an den Server gesendet.
                AJAX-Crawling: Leitfaden für Webmaster und Entwickler - Webmaster-Tools-Hilfe

                Also #ref=rss kommt beim Server vom Spiegel eh nicht an.

                HTML-Code:
                http://example.com/seite.html#Hash-Fragment
                #Hash-Fragment - weg damit und gut sollte es sein.

                Wo ich nun bei meinen Listing schon am Nachbessern bin:

                PHP-Code:
                function filtereLinks($daten) {

                    if ((
                $pos strpos($daten"#")) !== false) {
                        
                $daten substr($daten0$pos);
                    }    
                    
                $daten preg_replace("/[^a-z0-9_\/=.:;&?-]/is"""$daten);
                    return 
                $daten;

                Damit geht es aber auch:

                PHP-Code:
                echo '<a href="%3c%53%63%68%61%64%63%6f%64%65%3e">lesen</a>'
                Und das solltest Du unbedingt einmal ausprobieren in einer kleinen Datei. Es passiert nichts gefährliches, nur ein Demo für ein kleines JavaScript alert, wie schnell sich eine Seite verseuchen lässt:

                PHP-Code:
                <?php

                  
                echo  "\x3C\x73\x63\x72\x69\x70\x74\x20\x74\x79\x70\x65\x3D\x22\x74\x65".
                        
                "\x78\x74\x2F\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x22\x3E\x61".
                        
                "\x6C\x65\x72\x74\x28\x22\x53\x63\x68\x61\x64\x63\x6F\x64\x65\x22".
                        
                "\x29\x3B\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E";
                ?>
                Und dann weißt Du, warum # und \ und % im Allgemeinen nichts in einer Zeichenklasse für Filter verloren haben und \ nur zum maskieren von anderen Zeichen verwendet werden sollte.

                Nach den Browsern und Anbietern brauchst Du Dich nicht zu richten, es ist ja nicht deren System, welches verseucht werden könnte, es ist ja Dein System oder das System der Besucher Deiner Webseite und die werden sich nicht bei Dir bedanken, wenn sie wegen einer unsicheren Webseite ihren eigenen Computer neu aufsetzen mussten.

                Nun gut, mal sehen was Du da noch findest.

                Edit: Nun scheint es dem Ende zuzugehen, was die Durchsicht anbelangt. Eigentlich sollte ich ja nun zufrieden sein, dass Du das Ding ausgiebig getestet hast. Etwas meckern ist zuweilen auch nicht verkehrt, dann kann der Tag nur noch besser werden. Wenn jetzt noch etwas ist, dann bleibt das so, habe ich mir zumindest vorgenommen, dann sind das halt Versionen und eigentlich ist es ja auch so.

                Speichere ja alles noch einmal unter anderen Namen ab, denn allein nach dem DPMA gibt es schon um die 50 eingetragene Marken, die mit XML beginnen. Bei einer Script-Beschreibung ist das eigentlich egal, ein Feedreader ist nun einmal ein Feedreader, doch wenn man den dann eventuell bewerben möchte, könnte das anders aussehen.
                Zuletzt geändert von Melewo; 17.06.2013, 17:23.

                Kommentar


                • #83
                  Ja,

                  ich habe noch bei Euronews ein Problem entdeckt, da wird anscheinend noch die Schlagzeile in den Link eingefügt, es steht aber erstmal ein Platzhalter (Tilde + Ziffer) drin, der jetzt durch den feedreader entfernt wird, so dass er die Seite dann nicht findet. Kannst es Dir anschauen, wenn Du willst.

                  euronews

                  Musst ja auch nix mehr ändern Ich kann ja auch in Einzelfällen auf den Magpie-Parser zurückgreifen.

                  Ich habe Dich als Hinweis in mein Impressum aufgenommen und auf Deine Seite verlinkt. Ich glaube kaum, dass es da markenrechtliche Probleme gibt, so wie es da steht.

                  Den vorgeschlagenen Test werde ich dann demnächst auch mal machen.

                  Alles kriegt man sowieso nicht ideal gelöst, der NDR hat ja gar keine Verlinkung, sondern alle Meldungen als Akkordeon dargestellt, so das man auch keine Einzellinks ausgeben kann. Und beim Saarländischen Rundfunk muss man auch sehr tricksen und sich durch 7 Seiten parsen, um an description-Text zu kommen.

                  Nochmals Dank und Gruß
                  newbie1955

                  Kommentar


                  • #84
                    Zitat von newbie1955 Beitrag anzeigen
                    Ich glaube kaum, dass es da markenrechtliche Probleme gibt, so wie es da steht.
                    Bei Dir nicht, habe den Link gefunden, danke.

                    Laden tut der "http://feeds.feedburner.com/euronews/de/home?format=xml" eigentlich normal, doch der wird doch über feedburner ausgeliefert und Google ist da nicht ganz so uneigennützig. Die Links sehen ja so aus:

                    HTML-Code:
                    <link>http://feedproxy.google.com/~r/euronews/de/home/~3/nbcMxRYfNcE/</link>
                    An die restlichen würde man auch kommen, dann müsste halt der zusätzlich Tag aufgenommen werden.

                    Solange es nur ein Script und kein Produkt ist, da braucht einen so etwas nicht zu interessieren. Wenn es aber als Produkt ausgelegt werden könnte, weil es zum Beispiel für 1 Euro bei eBay unter einem Namen eingestellt wird, dann sieht die Sache schon ein wenig anders aus. Nur mal so ein Auszug, was so beim DPMA registriert wurde:

                    Datenbestand Aktenzeichen/Registernummer Wiedergabe der Marke
                    DE 399517731 XML-Info
                    DE 399517766 XML-Online
                    DE 399517774 XML-Training
                    DE 399531785 XML-Forum
                    DE 399550348 XML-Info
                    DE 300511841 XML-Builder
                    EM 9591843 XML Validator
                    EM 11595725 Xml Robot
                    Bei PHP habe ich zum Beispiel in den Lizenzbedingungen gelesen, dass PHP nicht in einem Produktnamen verwendet werden darf. Wie sich das bei XML verhält weiß ich nicht. Doch nun kannst Du oder ich oder jeder andere Tutorials machen, soviel wie Du oder ich oder ein anderer möchte und die in den Tutorials beschrieben Scripts auch PHP-Scriptname oder wie auch immer benennen, spielt alles keine Rolle, doch wer dann ein fertiges Script als Produkt unter diesen Namen bei eBay anbieten möchte, der kann gewaltig auf die Nase fallen. Das XML habe ich jetzt noch belassen, da müsste ich erst einmal sehen, ob da auch etwas quer laufen könnte. Bisher biete ich ja auch noch nichts an.

                    Ein Blog hatte mal ohne irgendwelche Hintergedanken diese Olympischen Ringe auf der Seite irgendwie abgebildet. Zumindest so lange, bis vom Olympischen Komitee eine Abmahnung mit einer Kostennote von 30.000 Euro kam. Die haben sich dann, nach dem sie die Ringe selbstverständlich sofort entfernten, wohl auf eine Summe von 15.000 geeinigt, wenn ich mich recht entsinne. Bei den Olympischen Ringen hätte ich mir auch nichts gedacht, sind aber halt als Bildmarke geschützt.

                    Die abgeleitete Software darf ohne vorherige Erlaubnis der PHP Group weder mit dem Namen „PHP“ beworben werden, noch darf die abgeleitete Software „PHP“ in ihrem Namen enthalten.
                    PHP-Lizenz ? Wikipedia

                    Nun ist die Frage, was die unter einer abgeleiteter Software verstehen und ab und an liest sich das so, als würde es sich darauf beziehen, wenn jemand eine PHP ähnliche Serversoftware entwickeln möchte, die den Kern von PHP mitbenutzt oder so.
                    Zuletzt geändert von Melewo; 17.06.2013, 23:22.

                    Kommentar


                    • #85
                      Frage

                      Hallo, Du filterst doch in den feedfunktionien eigentlich schon alles raus, was in die Ausgabe nicht reingehört. Ich habe dennnoch eine Description-Ausgabe, die den eigentlichen Text erst nach unendlich vielen scheinbaren Leerzeichen ausgibt, obwohl ich den Inhalt von description trimme.

                      HTML-Code:
                       <description>&lt;div class=&quot;field field-article-lead-image&quot;&gt;     &lt;div class=&quot;field-items&quot;&gt;             &lt;div class=&quot;field-item odd&quot;&gt;                     &lt;img src=&quot;http://www.handelszeitung.ch/sites/handelszeitung.ch/files/imagecache/left-standard-teaser/lead_image/hagel.jpg&quot; alt=&quot;Hagelsturm im Kanton Zürich kostet Millionen&quot; title=&quot;Hagelsturm im Kanton Zürich kostet Millionen&quot;  class=&quot;imagecache imagecache-left-standard-teaser imagecache-default imagecache-left-standard-teaser_default&quot; width=&quot;218&quot; height=&quot;130&quot; /&gt;        &lt;/div&gt;         &lt;/div&gt; &lt;/div&gt; &lt;div class=&quot;field field-article-lead&quot;&gt;     &lt;div class=&quot;field-items&quot;&gt;             &lt;div class=&quot;field-item odd&quot;&gt;                     Der Hagelsturm von Dienstagabend richtete im Kanton Zürich einen Schaden von rund 15 Millionen Franken an. Mehrere Tausend Gebäude wurden beschädigt.        &lt;/div&gt;         &lt;/div&gt; &lt;/div&gt; </description>
                      Ich brauche nur den Text ab "Der Hagelsturm.." Er lässt jetzt nur das Bild und die Sonderzeichen weg, lässt aber den freien Raum trotz trim bestehen.

                      Gruß
                      newbie1955

                      Kommentar


                      • #86
                        Alle Leerzeichen kannst du nicht entfernen, sonst würde es so aussehen:

                        DerHagelsturmvonDienstagabendrichteteimKanton
                        Ich hatte hier aber, falls ich mich richtig erinnere, schon einmal ein Beispiel veröffentlicht (war denke ich ein Thread von Dir mit einer anderen Frage oder irre ich mich?) wie Du aus einem String zwei und mehr Leerzeichen in Reihe entfernst.

                        Ja, es war in einem Thread von Dir:
                        Zitat von Melewo Beitrag anzeigen
                        PHP-Code:
                        ...
                        // Entfernt alle Zeilenumbrüche und mehr als 1 Leerzeichen in Reihe,
                        // so dass aus dem String ein String in Reihe wird.
                        $data preg_replace("#\s{2,}#"""$data); 
                        http://www.php-resource.de/forum/php...problem-6.html

                        Nur solltest Du es in diesem Fall nur da einsetzen, wo es benötigt wird.
                        Zuletzt geändert von Melewo; 19.06.2013, 14:22.

                        Kommentar


                        • #87
                          Danke

                          ja, ein großer Teil der Leerzeichen geht damit weg, zwei Zeilen bleiben, warum weiß ich nicht. Es gab doch außer var_dump und ähnlichem auch noch eine Ausgabe - Möglichkeit, mit der man sich exakt jedes Zeichen anzeigen lassen konnte, das da scheinbar als Leerzeichen stehen bleibt.

                          Kommentar


                          • #88
                            Das weiß ich jetzt nicht so genau.
                            Welchen Editor benutzt Du?
                            Im Notepad++ Der Hagelsturm von Dienstagabend richtete im Kanton

                            Mit TextFX Convert to Hex und die normalen Leerzeichen (20) siehst Du ja dann und die Du nicht kennst, die kannst Du Dir aus einer Zeichentabelle holen:

                            Code:
                            "000000058  44 65 72 [B]20[/B] 48 61 67 65-6C 73 74 75 72 6D [B]20[/B] 76   |Der Hagelsturm v|"
                            "000000068  6F 6E [B]20[/B] 44 69 65 6E 73-74 61 67 61 62 65 6E 64   |on Dienstagabend|"
                            "000000078  [B]20[/B] 72 69 63 68 74 65 74-65 [B]20[/B] 69 6D [B]20[/B] 4B 61 6E   | richtete im Kan|"
                            "000000088  74 6F 6E 0D 0A                                    |ton..           |"
                            Unicode/UTF-8-Zeichentabelle

                            Es gibt dann noch diese Funktionen:

                            dechex() - Dezimal zu Hexadezimal Umwandlung
                            decbin() - Dezimal zu Binär Konvertierung
                            bindec() - Umwandlung von binär zu dezimal
                            hexdec() - Hexadezimal zu Dezimal Umwandlung
                            decoct() - Dezimal zu Oktal Umwandlung

                            Und Du hast noch chr und ord, falls Du so etwas wie auf dieser Seite beschrieben meintest:

                            ASCII-Zeichen zu Dezimalwert und umgekehrt (PHP, Beispiele)
                            Zuletzt geändert von Melewo; 19.06.2013, 17:12.

                            Kommentar


                            • #89
                              Ich konnte das gar nicht mit ansehen, wie langsam die Startseite vom Nachrichtentisch ladet. Habe mal etwas probiert und gebastelt, wie es schneller gehen würde. Ist jedoch noch keine ausgereifte Lösung, nur erst einmal ein Test.

                              Also, den PHP Code raus aus den Seiten und in eine kleine Datei packen. Im Beispiel die feeds.php, in der wie gehabt die funktionen.php includet wird:

                              PHP-Code:
                              <?php
                              ini_set
                              ("user_agent""Mozilla/5.0 (compatible; Feedreader/PHP +".$_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"].")");
                              header("Content-Type: text/html; charset=UTF-8");
                              error_reporting(E_ALL);

                              $feedfu "funktionen.php";           // Seite mit den Funktionen

                              if (file_exists($feedfu)) {include_once $feedfu;
                              } else {echo 
                              "Feedfunktionen konnte nicht geladen werden!\n";
                              }

                              // Feed-Adressen aufnehmen und nummerieren

                              $feedurls = array (

                                  
                              => "www.tagesschau.de/xml/atom/",
                                  
                              => "www.spiegel.de/wirtschaft/index.rss",
                                  
                              => "rss2.focus.de/c/32191/f/443313/index.rss",
                                  
                              => "www.heise.de/developer/rss/news-atom.xml"
                              );

                              if (isset(
                              $_GET["feedid"]) and !empty($_GET["feedid"])) {

                                  
                              $feedid preg_replace("/[^0-9]/"""$_GET["feedid"]);
                                  
                              verarbeiteFeed("http://".$feedurls[$feedid]);
                              }
                              ?>
                              In den eigentlichen HTML-Seiten dann Ajax-Funktionen:

                              HTML-Code:
                              <!DOCTYPE html>
                              <html>
                              
                              <head>
                              <title>Feedreader</title>
                              <link rel="stylesheet" type="text/css" href="feedstyle.css">
                              </head>
                              
                              <body>
                              <h1>Feedreader für RSS und Atom</h1>
                              
                              <script type="text/javascript">
                              
                              var feedObj = null;
                                  feedObj = new XMLHttpRequest();
                              var i = 1;
                              
                              window.onload = function() {
                              
                                  function beginneLaden() {
                              
                                      feedObj.open("GET", "feeds.php?feedid="+i);
                                      feedObj.onreadystatechange = ladeFeeds;
                                      feedObj.send(null);
                              
                                      function ladeFeeds() {
                              
                                          var fa = false;
                                          var anzahl = 5;      // Anzahl der Feeds angeben
                              
                                          if (feedObj.readyState == 4) {
                                              document.getElementById("feed"+i).innerHTML += feedObj.responseText;
                                              i++;
                                              fa = true;
                                              if (i > anzahl) {fa = false;
                                              }
                                          }
                                          if (fa != false) {
                              
                                              beginneLaden();
                                          }
                                      }
                                  }
                                  beginneLaden();
                              }
                              </script>
                              
                              <!--
                               Hier so viele Div-Bereiche im Dokument anlegen und mit einer ID versehen,
                               wie Feeds in der Seite geladen werden sollen.
                              -->
                              <div id="feed1"></div>
                              <div id="feed2"></div>
                              <div id="feed3"></div>
                              <div id="feed4"></div>
                              </body>
                              </html>
                              Prinzip: Zuerst wird ein einzelner Request gestartet, doch so wie die Daten des ersten Feeds übertragen wurden (readyState == 4), wird die i um eins erhöht und die Funktion erneut aufgerufen. Wenn der erste Feed ein schneller ist, ist auch sehr schnell etwas zu sehen und die restlichen folgen dann, erkennbar daran, dass der Scrollbalken kürzer wird, weil die Seite länger wird.

                              Der Nachteil, die Seite enthält keinen für Suchmaschinen verwertbaren Content mehr. Eine Alternative wäre, zuerst die schnellen mit PHP zu laden, die langsamen dann per Ajax zusätzlich.

                              Edit: Habe mal ein kleines Demo mit 5 Feeds angefertigt, damit Du den Unterschied beim Laden einer Seite siehst:

                              Nur ein Demo - Feeds laden mit Ajax

                              Also, nach einer halben Sekunde ist die Seite zu sehen, dann folgen die Feeds. Finde ich für Besucher einer Seite angenehmer.
                              Zuletzt geändert von Melewo; 20.06.2013, 14:59.

                              Kommentar


                              • #90
                                Oha

                                ja, ich wusste, dass das relativ lange dauert und habe mit javascript erste Versuche gemacht, ohne dass es alles viel schneller lief - ich wollte nicht so viel damit herumpfuschen, ich habe aber immer nach Lösungen gesucht, die Seite Stück für Stück zu laden, damit man schon mal die erste feeds gezeigt werden, während die nächsten noch laden. Ich hatte auch an Cron-Jobs gedacht, damit schon was da ist, wenn die Seite aufgerufen wird, aber mein provider unterstützt das nicht.

                                Du musst Dir das so vorstellen: Es gab eine Seite eines Ex-Kollegen von mir, die aber urheberrechtliche Schwierigkeiten hatte, weil der Ex-Kollege leider nicht nur die feeds, sondern auch ein paar urheberrechtlich geschützte contents verbreitete, ohne einen Vertrag mit den Agenturen zu haben. Deshalb hat er die Seite gleich ganz vom Netz genommen (zumal er auch verständlicherweise verärgert war, dass das irrsinnig viel Arbeit macht, aber aus rechtlichen Gründen ja gar kein Geld bringen darf ).

                                Da habe ich mich dann - fast ohne PHP und mit nur wenig HTML/CSS-Kenntnissen - rangemacht und erstmal gebastelt, weil wir hier (unsere Nachrichtenredaktion ist der dritte feed von oben links) immer sehr viel mit einer solchen Seite gearbeitet haben, um zu sehen, was es an Themen sonst noch so gibt und was die anderen Medien wichtig finden. Am Anfang war das ganze komplett ohne Layout, nur dass wir uns nicht mehr einzeln durch die Medienseiten klicken mussten. So, und das ist jetzt eben daraus geworden.

                                Ich werden mir Dein Script in Ruhe anschauen - und bin Dir wie stets sehr dankbar für die viele Arbeit. Der erste Eindruck der Demo ist toll. Ob und wann ich es umstelle, muss ich dann sehen. Denn ich fürchte, sonst falle ich Dir noch Jahre auf die Nerven, weil, immer wenn ich etwas ändern will, weiß ich dann nicht weiter usw. Mein erste Frage wäre schon mal, was denn in den divs "feed1" usw noch drinnestehen soll, was die funktion aufruft?

                                Wobei ich ja auch noch bei einzelne Medien Extra-Lösungen habe, wo ich direkt auf die Seite gehe und h2-tags lese usw.

                                Bis demnächst
                                newbie1955
                                Zuletzt geändert von newbie1955; 20.06.2013, 16:23.

                                Kommentar

                                Lädt...
                                X