Keywords vom Metatag auslesen

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

  • Keywords vom Metatag auslesen

    Hallo Profies,

    ich hätte da mal ein Problem :

    Gibt es die Möglichkeit nur die Keyords von den Metatags auszulesen
    ohne zu wissen wie 'keywords' geschrieben wurde ?

    Zur Info :

    Ich bin gerade dabei ein SUBMIT Script zu schreiben
    und würde dem User gerne die Möglichkeit geben
    die z.B. die Keywords ins Forumlar laden zu lassen.

    Danke und Gruss

    Manuela

  • #2
    get_meta_tags()
    ist eventuell Dein Freund
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Ja das weis ich ja, habe ja schon ein Sript
      auf meiner Seite laufen mit der Funktion,

      Nun habe ich ein Formular zur Eintragung
      in Suchmaschine in dem ich wie schon gesagt
      dem User durch die Eingabe seiner URL die
      Möglichkeit geben die Keywords aus seiner
      Seite aus zu lesen und in meinem Formular
      per Knopdruck einfügen lassen.

      Gruss und Danke Manuela

      Kommentar


      • #4
        array get_meta_tags ( string filename [, int use_include_path])

        Opens filename and parses it line by line for <meta> tags in the file. This can be a local file or an URL. The parsing stops at </head>.
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Mhhh irgendwie scheine ich mich
          nicht richtig aus zu drücken,
          ich möchte keine METATAGS auslesen
          sonder nur die Keywords,
          denn wie ich die METATAGS auslese weis ich

          METATAGS AUSLESEN

          Was ich möchte ist alles einzeln auslesen z.B. php-resource:

          description:
          PHP resource - Eine schier unerschöpfliche Quelle für Scripts fast jeder Art - PHP, ASP, JavaScript- hat sich auf der Seite von PHP Resource aufgetan. Gleichgültig was Sie suchen, hier können Sie Ihren Durst löschen, übersichtlich in Rubriken geordnet.


          oder

          keywords:
          PHP, php4, homepage,Programmierer , Programmierung, MYSQL, PERL, shop, cgi, scripts, irc, java, Software, Job-Angebote, Jobs, webmaster, bewerben, mcse ,webhosting, webspace,resource,ressource,download, Stellenanzeigen, homepagevorlagen, Design


          so dass ich z.B. den Inhalt von 'keywords' einer Variabel zuweisen kann.

          Trotzdem Danke gruss Manuela
          Zuletzt geändert von manuelakersten; 14.08.2003, 20:51.

          Kommentar


          • #6
            und auf der seite gibst du doch alle metatags aus, inkl. der keywords

            schau mal im manual: http://de.php.net/get-meta-tags, da isses in expressis verbis
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              O.K. bin etwas begriffstutzig -> SORRY !

              Nun habe ich diesen Code:
              PHP-Code:
              <?php
              $tags 
              get_meta_tags("http://$url");
              print 
              $tags['keywords'];
              ?>
              nun habe ich noch das Problem,
              das ich auf 'knopfdruck' das Ergebnis
              in einen schon vorhandenen
              <textarea> einfügen möchte.

              PHP-Code:
              <tr>
              <
              td bgcolor=#F7F5F2>Beschreibung:<br>(max. <input type=box readonly name=rembeschreibung size=3 value=200> Zeichen)</td>
              <td bgcolor=#F7F5F2><textarea name=\"beschreibung\" cols=\"34\" rows=\"5\" wrap=\"hard\" onKeyDown=\"textCounter(this.form.beschreibung,this.form.rembeschreibung,200);\" onKeyUp=\"textCounter(this.form.beschreibung,this.form.rembeschreibung,200);\"></textarea>
              <img src=\"http://www.alfshomepage.de/portal/images/auslesen.bmp\" align=\"center\" valign=\"middle\"></td>
              </tr> 
              Wobei
              PHP-Code:
              <img src=\"http://www.alfshomepage.de/portal/images/auslesen.bmp\" align=\"center\" valign=\"middle\"> 
              der Ausleseknopf sein soll.

              Für noch eine Hilfestellung wäre ich dankbar

              Gruss Manuela

              Kommentar


              • #8
                wenn du die Formular-Seite an sich nicht nochmal neu laden willst, dann mußt du die Aktion mit dem Auslesen z.B. über ein Popup lösen, welches ein Skript mit der gewünschten URL ausliest und das Ergebnis dann per JavaScript in das Formular reinschreibt:
                PHP-Code:
                <?
                $tags = get_meta_tags("http://$url");
                ?>
                <script>
                window.opener.document.forms[0].beschreibung.value='<?=$tags['keywords']?>';
                </script>
                wobei $url eben an das Popup-Skript übertragen werden muss.

                P.S.: anstelle eines Popups (welches der User ja bemerkt) kannst du auch einen Hidden-Frame benutzt. Dann passiert alles "unbemerkt".

                Kommentar


                • #9
                  Danke für die Antwort,
                  es wer mir schon lieber, wenn der User nichts merkt.

                  Hiddenframe wie geht das ?

                  Gruss und danke Manuela

                  Kommentar


                  • #10
                    naja, wenn du ein Frameset auf deiner Website benutzt, dann hast du irgendwo noch einen "Hidden"-Frame, also einen Frame, der die Größe 0 oder 1 hat. sowas sieht der User nicht, aber der Frame ist da und den kannst du dann als Ziel für deine Aktion benutzen.
                    D.h. bei Klick auf den Button wird über JavaScript das Formular mit der URL an das Skript in den "Hidden"-Frame geschickt -> dort wird alles verarbeitet und dann tauchen die Werte wie von Geisterhand in der Textarea auf.

                    Kommentar


                    • #11
                      Mhh also ich habe zwei Frames in dem Script später
                      drin eins für die Eingabe und eines für die Ausgabe.
                      PHP-Code:
                      echo '<frameset rows="30%,*" frameborder="0" framespacing="0" border="0">
                        <frame src="eintragonline.php" name="stat"  scrolling="no">
                        <frame src=status.php scrolling="yes" name="online">
                        <noframes>
                          Ihr Browser kann diese Seite leider nicht anzeigen, er unterstützt keine Frames!
                        </noframes>
                      </frameset>
                      '

                      So nun soll ich noch ein drittes Frame hinzufügen, was nicht sichtbar ist
                      PHP-Code:
                      echo '<frameset rows="30%,*,0%" frameborder="0" framespacing="0" border="0">
                        <frame src="eintragonline.php" name="stat"  scrolling="no">
                        <frame src="status.php" scrolling="yes" name="online">
                        <frame src="hiddenframe.php" scrolling="no" name="hiddenframe">
                        <noframes>
                          Ihr Browser kann diese Seite leider nicht anzeigen, er unterstützt keine Frames!
                        </noframes>
                      </frameset>
                      '

                      und wie geht es weiter ?

                      Danke und Gruss Manuela

                      Kommentar


                      • #12
                        PHP-Code:
                        <script>
                        function 
                        getKeywords() {
                            
                        document.forms[0].action='datei_getMetatag.php'// Zielskript des Formulars umbiegen
                            
                        document.forms[0].target='hiddenframe'// Hiddenframe als Ziel angeben
                            
                        document.forms[0].submit(); // abschicken
                            
                        document.forms[0].action='urspruengliche_datei.php'// Skript, welches vorher im action-Parameter drin stand
                            
                        document.forms[0].target='_self';
                            }
                        </
                        script>

                        <
                        tr>
                        <
                        td bgcolor=#F7F5F2>Beschreibung:<br>(max. <input type=box readonly name=rembeschreibung size=3 value=200> Zeichen)</td>
                        <td bgcolor=#F7F5F2><textarea name=\"beschreibung\" cols=\"34\" rows=\"5\" wrap=\"hard\" onKeyDown=\"textCounter(this.form.beschreibung,this.form.rembeschreibung,200);\" onKeyUp=\"textCounter(this.form.beschreibung,this.form.rembeschreibung,200);\"></textarea>
                        <a href=\"javascript:getKeywords()\"><img src="http://www.alfshomepage.de/portal/images/auslesen.bmp\" align=\"center\" valign=\"middle\"></a></td>
                        </tr
                        und in der Datei 'datei_getMetatag.php' ist das Skript von weiter oben. Im Formular muss ja irgendwo noch ein Feld sein, wo man die URL angibt -> diesen Feldnamen mußt du in dem Skript 'datei_getMetatag.php' benutzen.
                        PHP-Code:
                        <?
                        $tags = get_meta_tags("http://$feldname_vom_formular");
                        ?>
                        <script>
                        parent.stat.document.forms[0].beschreibung.value='<?=$tags['keywords']?>';
                        </script>
                        wobei parent.stat der Name vom Frame ist, in welchem das formular geladen ist.
                        Zuletzt geändert von BrainBug; 15.08.2003, 11:36.

                        Kommentar


                        • #13
                          Boohhh - ist das kompliziert und das nur um es den Usern zu vereinfachen,
                          danke für Deine Hilfe, jedoch hätte ich da jetzt eine klizekleine Frage.

                          Also ich habe jetzt folgendes gemacht :

                          Das Hauptformular heist 'test.php' in dem habe ich das Fromular plus das JS eingefügt und wie folgt geändert :
                          PHP-Code:
                          <script>
                          function 
                          getKeywords() {
                              
                          document.forms[0].action='datei_getMetatag.php'// Zielskript des Formulars umbiegen
                              
                          document.forms[0].target='hiddenframe.php'// Hiddenframe als Ziel angeben
                              
                          document.forms[0].submit(); // abschicken
                              
                          document.forms[0].action='test.php'// Skript, welches vorher im action-Parameter drin stand
                              
                          document.forms[0].target='_self';
                              }
                          </
                          script
                          Ich habe die datei ''datei_getMetatag.php' mit folgendem Inhalt erzeugt :
                          PHP-Code:
                          <?
                          $tags = get_meta_tags("http://$url");
                          ?>
                          <script>
                          test.document.forms[0].beschreibung.value='<?=$tags['keywords']?>';
                          </script>
                          Die Framedatei :
                          PHP-Code:
                          echo '<frameset rows="50%,*,0%" frameborder="0" framespacing="0" border="0">
                            <frame src="test.php" name="stat"  scrolling="yes">
                            <frame src="status.php" scrolling="yes" name="online">
                            <frame src="hiddenframe.php" scrolling="no" name="hiddenframe">
                            <noframes>
                              Ihr Browser kann diese Seite leider nicht anzeigen, er unterstützt keine Frames!
                            </noframes>
                          </frameset>
                          '
                          ;

                          ?> 
                          Und eine Inhaltlich leere Datei mit dem Namen 'hiddenframe.php'

                          Nun wenn ich jetzt das Formular aufrufe, die URL ausfülle und den 'EINLESEBUTON' drücke erhalte ich im Frame 'test.php' folgende Fehlermeldung :

                          The requested URL /submit/java script:getKeywords() was not found on this server.

                          Was habe ich falsch gemacht, es ist nicht einfach da das Formular nicht nur aus einer Abfrage besteht :

                          test.php

                          Danke und Gruss Manuela

                          Kommentar


                          • #14
                            hi,

                            1. du kannst den JS-Befehl nicht einfach irgendwie benennen, sondern es bedarf der Syntax "parent.framename....", also deine Anweisung "test.document...." in 'datei_getMetatag.php' wird nicht klappen, da es keinen Frame gibt, der "test" heisst. Deine Frames heissen "stat", "online" und "hiddenframe" (siehe Framedatei).

                            2. muss das Eingabefeld für die URL in deinem Formular in der Datei 'datei_getMetatag.php' benutzt werden, d.h. wenn das Feld im Formular 'name="UserURL"' heisst, dann musst du in PHP auch $UserURL benutzen. Dein Skript benutzt momentan die Variable $url, heisst so auch das Eingabefeld? Und falls global_register nicht "on" ist, dann solltest du hier eher $HTTP_POST_VARS['url'] oder $_POST['url'] benutzen. Einfach mal $url im Skript ausgeben und du siehst, ob der eingegebene Wert zur Verfügung steht.

                            Alles klar?

                            Kommentar


                            • #15
                              sorry, habe übersehen, dass du einen Link auf deine Skripte eingefügt hast.

                              du hast beim Button-Link einen Fehler!!
                              PHP-Code:
                              <a href="javascript:getKeywords()"
                              muss es heissen, nicht java script als getrennter Begriff!!!

                              P.S.: hä?? irgendwie trennt das Forum den Begriff, kein Wunder, dass du das falsch rauskopiert hast. Es darf also nicht "java script" heissen, sondern zusammengeschrieben. okay?
                              Zuletzt geändert von BrainBug; 15.08.2003, 12:35.

                              Kommentar

                              Lädt...
                              X