ichhabnefrage Posted October 15, 2007 Report Share Posted October 15, 2007 Hallo, habe das gesamte Forum durchsucht und finde keinen Beitrag der zu meinem Problem passt. Ich möchte auf der Seite "login.php" alle Links deaktivieren. Dadurch soll sichergestellt sein, dass ein weitersurfen im Shop erst nach Anmeldung möglich ist. Es sollen also nur die reinen Anmeldeseiten frei erreichbar sein. Für Lösungsvorschläge bin ich Dankbar. ciao Link to comment Share on other sites More sharing options...
buero-design Posted October 15, 2007 Report Share Posted October 15, 2007 Da wirst Du wohl ein bischen mehr tun müssen. Es reicht ja nicht, die Links zu deaktivieren / verstecken. Wer die direkten Adressen kennt, erreicht die Seiten ja auch so. Du müsstest also (vielleicht in die application_top.php) eine Abfrage reinbauen, die bei jeder Seite solange auf den Login verlinkt, wie ein User nicht angemeldet ist. Ben Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 15, 2007 Author Report Share Posted October 15, 2007 @buero-design So ähnlich hatte ich mir das auch vorgestellt, es wäre ja möglich gewesen, dass schon einer so etwas gemacht hat und ich nicht das Rad neu erfinden muss..... Werde mal noch ein oder zwei Tage warten und dann loslegen. Bis dahin...Danke Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 16, 2007 Author Report Share Posted October 16, 2007 Hat keiner mehr eine Idee? Ist doch evtl. auch für andere Zwecke interessant, bestimmte Links auf einzelnen Seiten auszublenden oder einfach totzulegen um Kunden in eine bestimmte Richtung zu lenken. Immer her mit den Ideen.... Wenns nicht klappt, macht auch nichts. Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 19, 2007 Author Report Share Posted October 19, 2007 Noch einmal meine Frage..... Wie blende ich die Links auf der login.php aus, (respektive wie kann ich mittels sessionabfrage die anderen Shopseiten vor dem Zugriff nichtangemeldeter User schützen), damit ein User sich zwingend erst registrieren muss? Habe es schon mehrfach versucht, klappt aber nicht! Die application_top.php wird ja auch schon mit der login.php aufgerufen, von daher gibt es schon Probleme. Vielleicht kann mir doch noch jemand helfen... Danke und Gruss Link to comment Share on other sites More sharing options...
Hetfield Posted October 19, 2007 Report Share Posted October 19, 2007 Hallo! Suche mal in der in der includes/application_top.php nach folgendem Codeabschnitt: // econda tracking if (TRACKING_ECONDA_ACTIVE=='true') { require(DIR_WS_INCLUDES . 'econda/class.econda304SP2.php'); $econda = new econda(); }[/php]und füge darunter folgenden Code ein: [php]if (substr(basename($PHP_SELF), 0,5) != 'login') { if (!isset ($_SESSION['customer_id'])) { xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL')); } }Damit wird der Kunde so lange auf die Login-Seite umgeleitet, bis er sich eingeloggt hat. Er kann so zwar alle Links sehen, aber das Anklicken bringt ihm nichts. Sollen die Boxen ebenfalls alle ausgeblendet werden, so muss die templates/DEIN_TEMPLATE/source/boxes.php entsprechend angepasst werden. MfG Hetfield Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 19, 2007 Author Report Share Posted October 19, 2007 Danke, ich versuche das sofort einmal! Mein letzter Versuch war die Einbindung auf den Hauptseiten (index; shop_content usw.: // ist der Kunde nicht eingeloggt, zurück zur Login Seite if (!isset ($_SESSION['customer_id'])) { if ($_SESSION['customer_id'] == '') xtc_redirect(xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL')); } //Ende Das funktioniert auch, aber komischerweise nicht in der Index.php und beim Impressum. Ich verwende das Template xtc_004.SP2.1 Melde mich gleich nochmal, bis dahin Danke... Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 19, 2007 Author Report Share Posted October 19, 2007 @Hetfield Habe jetzt meinen Code mal ausgeblendet und Deinen in die application_top eingebunden. Klappt, von daher erst einmal Vielen Dankeschön.... Problem ist nur, dass gleiche wie bei mir. Oder so Ähnlich... Die oberen Reiter im besagten Template werfen den angemeldeten User zurück ins Anmeldemenue anstatt auf den Status zu reagieren. Woran kann das liegen??? Ich bin echt überfragt. ciao Link to comment Share on other sites More sharing options...
Hetfield Posted October 19, 2007 Report Share Posted October 19, 2007 Hallo! Peinlich! Die Kunderegistrierung vergessen! Hier der geänderte Code: if (substr(basename($PHP_SELF), 0,6) != 'create') { if (substr(basename($PHP_SELF), 0,5)!= 'login') { if (!isset ($_SESSION['customer_id'])) { xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL')); } } }[/php]Einfach gegen den ersten von mir geposteten ersetzen. MfG Hetfield Link to comment Share on other sites More sharing options...
ichhabnefrage Posted October 19, 2007 Author Report Share Posted October 19, 2007 @ hetfield Hallo, klappt jetzt wesentlich besser.... Nochmals Danke:D ciao Link to comment Share on other sites More sharing options...
Hetfield Posted October 19, 2007 Report Share Posted October 19, 2007 Gern geschehen! MfG Hetfield Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.