session + link + modrewrite

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

  • session + link + modrewrite

    hallo Leute,

    ich brauche nochmal ne Gedankenstütze.


    folgende Links benutze ich z.B.

    PHP-Code:
    echo "<td width=\"100%\"><a href=\"" $urlPfad "themes/kategorie/kat" .$row->id "-"; if (!isset($_COOKIE['s'])) echo  's=' session_id();
    echo 
    ".htm\"><b>" $row->name "</b></a></td>\n"
    bei deaktivierten Cookis sehen die so aus:

    und bei aktivierten Cookies so:

    jetzt möchte ich aber gerne das bei aktivierten Cookies das s= stehen
    bleibt.
    z.B. so:
    weil wenn die sumas vorbeischauen sehen die Links so aus, mit dem s=,
    die sessionid selbst ist ja deaktiviert.

    Und google vergibt jetzt nur den dateien die ein s= drin haben ein pagerrank, weil ohne s= kennt er ja nicht, so sind die dateien für die normalen user immer mit PR 0.

    liegt es an dem sumascript der den start einer sessionid verhindert oder kann ich das in der .htaccess etwa beeinflussen?
    mfg
    marc75

    <Platz für anderes>

  • #2
    Re: session + link + modrewrite

    wieso stehen bei dir die URL-parameter vor der dateiendung (.htm)?

    das ist "pervers".
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: Re: session + link + modrewrite

      OffTopic:
      Original geschrieben von wahsaga
      das ist "pervers".
      aber in bezug auf die url suchmaschinenfreundlich...

      nur dass die suchmaschine das dingens nur einmal findet. und user die auch den indizierten link klicken nicht mehr da landen, weil die session.id i.d.r. dann schon ungültig ist. *fg*
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        Re: Re: Re: session + link + modrewrite

        Original geschrieben von Abraxax
        OffTopic:
        aber in bezug auf die url suchmaschinenfreundlich...
        ich frage mich in dem zusammenhang eher, ob das überhaupt erlaubt ist?

        ein fragezeichen war in den URLs nicht drin, um den beginn des query string anzukündigen - also müsste das = meines erachtens wenigstens maskiert werden.

        und /kategorie/kat47-s=.htm macht in meinen augen auch wenig sinn, entweder ist das ein dateiname (wegen fehlendem "?"), oder aber, wenn der hintere teil trotzdem als query string gewertet werden sollte, dann dürfte ".htm" in diesem falle der wert der variablen s werden ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          ich denke mal, dass da dir passende rule hinter steckt. einen querystr. vermute ich da allerdings nicht.

          Kommentar


          • #6
            Re: Re: Re: session + link + modrewrite

            Original geschrieben von Abraxax
            OffTopic:
            aber in bezug auf die url suchmaschinenfreundlich...

            nur dass die suchmaschine das dingens nur einmal findet. und user die auch den indizierten link klicken nicht mehr da landen, weil die session.id i.d.r. dann schon ungültig ist. *fg*
            da je keine sessionid erzeugt wird wenn google und co. vorbei schauen wird immer der selbe Inhalt vorgesetzt, somit sehen User die über die sumas kommen genau die selbe seite wie die sumas.
            Mit dem einen Unterschied wenn sie über die Sumas kommen das zwischen dem -.htm noch ein s= steht (-s=.htm). Dank modrewrite landen die leute trotzdem auf der selben seite.

            @wasaga
            wieso sollte es nicht erlaubt sein? dafür ist doch modrewrite da, weil die sumas ja ?& usw. nicht leiden können.
            mfg
            marc75

            <Platz für anderes>

            Kommentar


            • #7
              ich würde die sid als dir angeben. dann kann die suma im zweifelsfall auf n leeres dir gehen, oder?

              Kommentar


              • #8
                ehrlich gesagt weiss ich nicht wie ich es mit "dir" umsetzen soll, hab zwar schon im Handbuch geschaut was es ist, aber wirklich weitergekommen bin ich dabei nicht.
                mfg
                marc75

                <Platz für anderes>

                Kommentar


                • #9
                  das mit dem "s=" hab ich jetzt hinbekommen.


                  nur bei solchen Links weiss ich nicht wie ich das isset einbinde:

                  PHP-Code:
                  $imageSmallAnzeige "<a href=\"" $urlPfad "themes/kategorie/artikel" $row->id "-" $katId "-" $parentId "-".$row->submenue."-" .SID".htm\"><img src='".$urlPfad."bilder/ohneklein.gif' border=\"0\"></a>"

                  da wo .SID. steht soll eigentlich:
                  PHP-Code:
                  if (!isset($_COOKIE['s'])) echo  's=' session_id(); 
                  das müsste ich hier wohl irgendwo vorher definieren oder?

                  ungefähr so:

                  PHP-Code:

                  $sess 
                  = if (!isset($_COOKIE['s'])) echo  's=' session_id();


                  $imageSmallAnzeige "<a href=\"" $urlPfad "themes/kategorie/artikel" $row->id "-" $katId "-" $parentId "-".$row->submenue."-" .$sess".htm\"><img src='".$urlPfad."bilder/ohneklein.gif' border=\"0\"></a>"
                  da ich aber von php zu wenig Ahnung habe, funktionierts natürlich mal wieder nicht.
                  mfg
                  marc75

                  <Platz für anderes>

                  Kommentar


                  • #10
                    wenn du auf cookie prüfst, bekommst du dann nicht dein suma-problem

                    Kommentar


                    • #11
                      schon gut, nehme es zurück!

                      PHP-Code:
                      $imageSmallAnzeige = <a href="'.$urlPfad.'themes/kategorie/artikel'.$row->id.'-'.$katId.'-'.$parentId.'-'.$row->submenue.'-'.(isset($_COOKIE['s'])) ? 's='.session_id().'.htm"><img src="'.$urlPfad.'bilder/ohneklein.gif" border="0"></a>'; 
                      Deine Anführungszeichen machst du auch wie du willst, kann das?

                      Kommentar


                      • #12
                        mhh

                        das mit den vielen " ist eigentlich nicht mein Werk, sondern von dem guten
                        Herrn Shopprog. Vertreiber.

                        und gleich mal noch ne frage dazu, da ja offensichtlich ' und " funktioniert (jedenfalls bei mir). Worin liegen da jetzt die Unterschiede.

                        So zum link:

                        PHP-Code:
                        $imageSmallAnzeige '<a href=\"'.$urlPfad.'themes/kategorie/artikel'.$row->id.'-'.$katId.'-'.$parentId.'-'.$row->submenue.'-'.(isset($_COOKIE['s'])) ? 's='.session_id().'.htm\"><img src=\"'.$urlPfad.'bilder/ohneklein.gif\" border=\"0\"></a>'
                        funktioniert leider nicht, gibt immer ein pharseerror, hab sogar \ vor den " eingefügt und hin und her probiert.

                        hab jetzt was anderes probiert:

                        PHP-Code:
                        if (!isset($_COOKIE['s']))
                        {
                         
                        $sessv '' session_id();
                        }


                        $imageSmallAnzeige "<a href=\"" $urlPfad "themes/kategorie/artikel" $row->id "-" $katId "-" $parentId "-".$row->submenue."-s=" $sessv ".htm\"><img src='".$urlPfad."bilder/ohneklein.gif' border=\"0\"></a>"
                        das funktioniert jetzt, wärs so eigentlich ok?
                        mfg
                        marc75

                        <Platz für anderes>

                        Kommentar


                        • #13
                          warum escapst du bei mir??

                          if (!isset($_COOKIE['s']))
                          {
                          $sessv = '' . session_id();
                          }


                          besser:
                          PHP-Code:
                          if (!isset($_COOKIE['s']))
                            
                          $sessv session_id();
                          else
                             
                          $sessv ''
                          warum ' und nicht " weil ' einen reinen str. bezeichnet. in " können auch variablen enthalten sein. ist im endeffekt egal. nur bei ' sparst du dir das escapen der " in html

                          Kommentar


                          • #14
                            ok, na denne werd ich jetzt mal alle restlichen Links anpassen.
                            mfg
                            marc75

                            <Platz für anderes>

                            Kommentar

                            Lädt...
                            X