Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit dynamischen Titel

Einklappen

Neue Werbung 2019

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

  • Problem mit dynamischen Titel

    Hallo erstmal...

    Ich wollte für meine Homepage bei der Besucher Unterseiten erstellen (in Form von ?id=Zahl der Seite) können dynamische URLS erstellen.

    Ich habe hierfür folgenden Code verwendet:
    PHP-Code:
    <title><?php echo $_GET['section']; ?> Hauptseite Titel</title>

    Nun kommt mein Problem, ich hab schon alles mögliche versucht um die Überschrift der einzelnen Seiten in den Header zu bekommen aber es klappt leider nicht. ich hab bei section schon alles mögliche eingesetzt, jedoch lässt es sich nicht umsetzen. Wenn ich statt "section" - "id" eingebe dann kommt statt der Überschrift der Unterseite im Titel leider nur die Zahl der Unterseite...

    Ich füge mal den Code hier ein, vl kann mir ja jemand sagen was ich einsetzen muss damit es die Überschrift der Unterseite übernimmt...


    Hauptseite: Hauptseite Titel
    Beispiel einer Unterseite: 339 Hauptseite Titel


    PHP-Code:
    <?PHP
    $connect 
    mysql_connect("localhost""....""....");
    mysql_select_db("...."$connect);
    ?>

    <?php
    $url 
    urlencode("http://fb.seite.com/?like=" $id);
            
    $data = <<< _HTML

    _HTML;

    $msg preg_replace("/\n/"" "$msg);

    ?>


     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html>

    <title><?php echo $_GET['id']; ?> Hauptseite Titel</title>
    <meta name="description" content="Seite um Facebook Gruppen zu erstellen" /> 
    <meta name="keywords" content="facebook, gefaellt mir, like fb, "/>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link rel="stylesheet" 
    href="files/style.css" type="text/css">
    <link rel="shortcut icon" href="/images/sitelogo.png" type="image/x-icon">

    </head>
    <body>
    <div id="fb-root"></div>
     
        <script type="text/javascript" src="files/TyntLite.js"></script></head><body><div 
    id="container">

        <?PHP
        
    if($_GET['add']){
            if(
    $_POST['aa'] == ""){
                echo
    '<script type="text/javascript">window.location = "?"; </script>';
            }else{
            
    $posted mysql_real_escape_string($_POST[aa]);
                
    mysql_query("INSERT INTO `likes` (`title`, `numLikes`) VALUES ('$posted', '0')");
                
    $select mysql_query("SELECT * FROM `likes` WHERE `title`='$_POST[aa]' AND `numLikes`='0'ORDER BY `id` DESC  LIMIT 1 ");
                
    $fetch mysql_fetch_array($select);
                echo
    '<script type="text/javascript">window.location = "?id='.$fetch[id].'"; </script>';
                }
            
        }else if(
    $_GET['id']){
            
    $select mysql_query("SELECT * FROM `likes` WHERE `id`='$_GET[id]' LIMIT 1");
            
    $count mysql_num_rows($select);
            if(
    $count == 0){
                echo
    '<script type="text/javascript"> window.location = "?"; </script>';
            }else{
                
    $fetch mysql_fetch_array($select);
                
    $count $fetch[numLikes] + 1;
                
    $valm $_GET[id] - 1;
                
    $valp $_GET[id] + 1;
                
    mysql_query("UPDATE `likes` SET `numLikes`='$count' WHERE `id`='$_GET[id]'");
                echo
    '<meta property="og:title" content="'.$fetch[title].'"/>
     

     

     
        <div id="box_0">
            <div id="head_0">
     
            </div>
            <div id="content_0">

                      <table width=100%><td align="left"><p class="big"><a href="http://www.fb.seite.com/"><font color="white">Facebook Like</font></a></td><td align="right"><font size="5"><a href="?id='
    .$valm.'">Previous Page</a> | <a href="?id='.$valp.'">Next Page</a></font></td></table></p><BR>


    <center>
    <b>    <p><font size="5"><font color="#000000">'
    .$fetch[title].'</font></font></p></b>

    <img src="http://www.fb.seite.com/images/arrow2.png"><font size="2">Click on Like to Show this On Your Facebook WALL</font>

    <p><iframe src="http://www.facebook.com/widgets/like.php?href=http://fb.seite.com/?id='
    .$_GET[id].'" scrolling="no" frameborder="0" style="border:none; width:370px; height:80px"></iframe></p>
    </center>


    <center>
    <BR><a href="http://www.fb.seite.com/"><font size="2"><u>Want to Share Anything with your friends to LIKE on FACEBOOK? CLICK HERE</u></font></a></p>
    </center>




     
                </div>
            </div>
            <img src="http://fb.seite.com/images/motionspace.png" alt="Spacer" border="0">'
    ;
            }
        }else{
    ?>

    </center><img src="http://www.fb.seite.com/x0x.png"></center>
        <div id="commentsparent">
    <div id="comments">
            <form method="POST" action="?add=new" name="formLike">
            <textarea cols="50" rows="4" name="aa" class="comments"></textarea>
        </div>
        </div>
        </form>
        <div align="right">
            <a href="#" onClick="javascript:document.formLike.submit();"><img  src="files/like.png" alt="Like" 
    type="image" border="0"></a>
        </div>       
        <? } ?> 
     
     
     
     
    <div id="bottomboxes">
     
        <div id="box_1">
     
            <div id="head_1">
    <font size="48px"><p class="big">Top Likes</p></font>
     
            </div>
     
            <div id="content_1">
                        <?PHP
                            $select 
    mysql_query("SELECT * FROM `likes` ORDER BY `numLikes` DESC LIMIT 15");
                            
    $count mysql_num_rows($select);
                            if(
    $count == 0){
                                echo
    '<font size="2px">• Currently no top likes<br></font>';
                            }else{
                                while(
    $fetch mysql_fetch_array($select)){
                                    echo
    '<font size="2px">•<a href="?id='.$fetch[id].'">'.$fetch[title].'</a><br></font>';
                                }
                            }
                            
    ?>
                            </div>
     
        </div>
     
        <div id="box_2">
     
            <div id="head_2">
     
               <font size="48px"><p class="big">Recent Likes</p></font>
     
            </div>
     
            <div id="content_2">
    <?PHP
                            $select 
    mysql_query("SELECT * FROM `likes` ORDER BY `id` DESC LIMIT 15");
                            
    $count mysql_num_rows($select);
                            if(
    $count == 0){
                                echo
    '<font size="2px">• Currently no likes<br></font>';
                            }else{
                                while(
    $fetch mysql_fetch_array($select)){
                                    echo
    '<font size="2px">• <a href="?id='.$fetch[id].'">'.$fetch[title].'</a><br></font>';
                                }
                            }
                            
    ?>
            </div>
     
        </div>
     
          </div>
     
     
     

     
    </body></html>


  • #2
    PHP-Code:
    $url urlencode("http://fb.seite.com/?like=" $id); 
    $id wird nirgends definiert.

    PHP-Code:
    $data = <<< _HTML

    _HTML; 
    Was genau soll das machen/bringen ?

    PHP-Code:
    $msg preg_replace("/\n/"" "$msg); 
    $msg wird auch nirgends definiert.

    PHP-Code:
    <title><?php echo $_GET['id']; ?> Hauptseite Titel</title>
    PHP-Code:
    <title><?php echo $_GET['section']; ?> Hauptseite Titel</title>
    Was stimmt denn nun ?
    Signatur:
    PHP-Code:
    $s '0048656c6c6f20576f726c64';
    while(
    $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

    Kommentar


    • #3
      das wort "section" hab ich nur als platzhalter verwendet hier im post.

      mit id kommt eben nicht die überschrift der einzelnen seiten sondern die zahl hinter ?id=

      ich möchte nun folgendes wissen, was muss ich nun im bereich title genau schreiben um die Überschriften der einzelnen Unterseiten im titel vor dem eig. Titel der Homepage zu bekommen.


      PHP-Code:
      <title><?php echo $_GET['DIESER BEREICH FEHLT MIR GLAUB ICH']; ?> Hauptseite Titel</title>
      oder ist da der code ganz falsch?

      Kommentar


      • #4
        ich möchte nun folgendes wissen, was muss ich nun im bereich title genau schreiben um die Überschriften der einzelnen Unterseiten im titel vor dem eig. Titel der Homepage zu bekommen.
        Das kommt drauf an wo du diesen Titel stehen hast?
        Kommt der aus der Datenbank, steht der in der URL (http://example.com/index.php?id=1&titel=Hier der Titel) ?

        Edit: Beantworte mal bitte meine Fragen aus dem Post davor! Ist das oben der orginale Code (vllt mit geänderten URLs, aber das ist egal) ?
        Signatur:
        PHP-Code:
        $s '0048656c6c6f20576f726c64';
        while(
        $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

        Kommentar


        • #5
          Zu deinen Fragen oben. Mir ist schon klar dass noch einige Bugs vorhanden sind. Da läuft noch nicht alles rund.

          Ich weiß nicht genau ob ich meine Frage ordentlich formuliert habe.

          Ich versuch es anhand eines Beispiels zu erklären.

          Wenn man zb. einen blog erstellt und dort einen neuen Artikel schreibt und die Überschrift eingibt, wird Überschrift vor dem eig Homepagetitel gestellt sofern man das Plugin installiert hat.

          Das will ich nun auch. Ich kenne mich mit php leider nicht so gut aus und das Script das ich habe ist auch ein gratis script...

          Daher wäre ich bei etwas leichterer erklärensweise sehr dankbar!

          Kommentar


          • #6
            Wie der Titel dorthinkommt kann man nicht einfach so sagen:
            Das kommt drauf an wo du diesen Titel stehen hast?
            Kommt der aus der Datenbank, steht der in der URL (http://example.com/index.php?id=1&titel=Hier der Titel) ?
            Edit: Ok dein Titel steht in $fetch[title]. Damit kannst du nun aber nicht so einfach was anfangen und zwar weil du dich nicht an das EVA (Eingabe, Verarbeitung, Ausgabe) hälst, und du den Titel somit schon lange ausgegeben hast, bevor du ihn abfragst.

            Mein Tipp: Zerleg das ganz Ding erstmal in mehrere Unterseiten, eine Startseite, eine für die einzelnen Sachen anzeigen, usw. Dann stopf alle Sicherheitslücken und halte dich an das oben genannte Prinzip.

            Wenn du's quick&dirty willst, häng deinen Titel in die URL und frag ihn davon ab. Davon rate ich dir aber dringend ab (ansich ist das zwar gut [freut sich die Suchmaschine], aber dass das Script erstmal aufgeräumt wird ist wichtiger).
            Signatur:
            PHP-Code:
            $s '0048656c6c6f20576f726c64';
            while(
            $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

            Kommentar


            • #7
              Zitat von ByStones Beitrag anzeigen
              Wie der Titel dorthinkommt kann man nicht einfach so sagen:


              Edit: Ok dein Titel steht in $fetch[title]. Damit kannst du nun aber nicht so einfach was anfangen und zwar weil du dich nicht an das EVA (Eingabe, Verarbeitung, Ausgabe) hälst, und du den Titel somit schon lange ausgegeben hast, bevor du ihn abfragst.

              Mein Tipp: Zerleg das ganz Ding erstmal in mehrere Unterseiten, eine Startseite, eine für die einzelnen Sachen anzeigen, usw. Dann stopf alle Sicherheitslücken und halte dich an das oben genannte Prinzip.

              Wenn du's quick&dirty willst, häng deinen Titel in die URL und frag ihn davon ab. Davon rate ich dir aber dringend ab (ansich ist das zwar gut [freut sich die Suchmaschine], aber dass das Script erstmal aufgeräumt wird ist wichtiger).
              Ok danke bis jetzt.

              Wie gehe ich am besten vor um die einzelnen Seiten zu zerlegen?

              Und wie würde der Code lauten um die quick&dirty Variante auszuführen?

              Aber es muss doch möglich sein einzelne Überschriften einer Unterseite in den Titel zu bekommen, oder?

              Kommentar


              • #8
                Aber es muss doch möglich sein einzelne Überschriften einer Unterseite in den Titel zu bekommen, oder?
                Natürlich, aber so wie deinen Code aufgebaut hast gestaltet sich das schwieriger. Dein Dokument wird von oben nach unten vom PHP-Parser durchgegangen und er führt deine Anweisungen aus.
                In deinem Fall heißt das: Zuerst die Datenbankverbindung aufbauen und dann ein wenig HTML Code an den Client senden, dann den Inhalt der Seite aus der DB auslesen und den an die Client senden, und dann nochmal ein bisschen HTML ausgeben.

                Das Problem bei dir ist: In dem ersten bisschen HTML Code (der vor dem Inhalt der Seite) steht schon der Title-Tag, also das wo du verändern willst. Bevor du aber den eigentlichen Inhalt der Seite ausgelesen hast um deinen Titel zu ändern, ist der Tag der den Titel festlegt schon beim Clienten angekommen => du kannst ihn nicht nachträglich ändern.

                Wie gehe ich am besten vor um die einzelnen Seiten zu zerlegen?
                Du gehts hin und teils deine Seite sinnvol ein. So auf den ersten Blick würde ich das bei dir wie folgt machen: Eine Startseite und eine Seite wo dann die FB-Likes angezeigt werden.

                Und dann bei der einzelnen Seite immer zuerst alle Usereingaben einholen (sei es per $_GET, $_POST) und anschließend die Eingaben verarbeiten (in DB schreiben, von DB lesen, ...) und erst ganz zum Schluss deine Ausgaben machen.

                Grüße
                Signatur:
                PHP-Code:
                $s '0048656c6c6f20576f726c64';
                while(
                $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

                Kommentar

                Lädt...
                X