Login Error Page falsche URL
-
- Beiträge: 59
- Registriert: Mi 18. Apr 2007, 18:43
- Kontaktdaten:
Login Error Page falsche URL
Hallo zusammen,
ich bin am verzweifeln. Habe auch über die Siche keine passende Antwort auf mein Problem gefunden. Deshalb hier meine Frage.
Ich habe beim Mandanten folgendes hinterlegt:
login_error_page -> idcatart -> 50
Wenn ich mich nun im Frontend mit korrekten Daten anmelde funzt alles wie es soll.
Jedoch wenn ich mich mit falschen Benutzedaten anmelde, laufe ich auf eine Fehlerseite 404.
Die URL lautet dann:
http://www.meineseite.de/_cms/seite/htt ... dcatart=50
Diese sollte aber lauten:
http://www.meineseite.de/_cms/seite/fro ... dcatart=50
Ich verwende die Version 4.6.23 mit ModRewrite
Wo könnte den hier der Fehler liegen. Über einen Tipp wäre ich sehr dankbar.
ich bin am verzweifeln. Habe auch über die Siche keine passende Antwort auf mein Problem gefunden. Deshalb hier meine Frage.
Ich habe beim Mandanten folgendes hinterlegt:
login_error_page -> idcatart -> 50
Wenn ich mich nun im Frontend mit korrekten Daten anmelde funzt alles wie es soll.
Jedoch wenn ich mich mit falschen Benutzedaten anmelde, laufe ich auf eine Fehlerseite 404.
Die URL lautet dann:
http://www.meineseite.de/_cms/seite/htt ... dcatart=50
Diese sollte aber lauten:
http://www.meineseite.de/_cms/seite/fro ... dcatart=50
Ich verwende die Version 4.6.23 mit ModRewrite
Wo könnte den hier der Fehler liegen. Über einen Tipp wäre ich sehr dankbar.
solved->
Scheint nur mit aktiviertem rewrite vorzukommen. Schein ein fehler im
./cms/front_crcloginform.inc.php
zu sein. Dort habe ich den Code
in folgenden ersetzt
Somit zieht er 'nur' noch die front Content und nicht mehr den ganzen html path doppelt, dann zieht er auch die errorcat.
gruß aus dem Norden
./cms/front_crcloginform.inc.php
zu sein. Dort habe ich den Code
Code: Alles auswählen
$sUrl = $cfgClient[$client]["path"]["htmlpath"]."front_content.php";
Code: Alles auswählen
$sUrl = "front_content.php";
gruß aus dem Norden
----
Contenido 4.4.5, Contenido 4.6
Contenido 4.4.5, Contenido 4.6
doch noch nicht ganz....
Dann ist er auf meine normale Fehlersiete glaufen, was ich ja aber nciht ganz so wollte.
Scheint definitv was am modrewrite zu sein, daher hab ich das für die Fehlerpage ausgeschaltet. Bitte den Code im
./cms/front_crcloginform.inc.php
austauschen
ALT
NEU
Wichtig ist dann natürlich, dass in der Config.php das $cfg['mod_rewrite']['use'] niemals auf 2 steht, sondern auf 1 oder 0. Somit umgeht er dann die Fehlersietenauflösung ganz. Ist denke ich da auch nicht so schlimm und ich hab eben keine lust den Fehler zu suchen...
Weiterhin müssen natürlich in den Mandanteneinstellungen
Type: login_error_page
Name: idcat
Wert: ~~~NUMMER~~~
Type: login_error_page
Name: idcatart
Wert: ~~~NUMMER~~~
Type: login_error_page
Name: idart
Wert: ~~~NUMMER~~~
gesetzt sein, gelle!
Gruß
Soeren
Scheint definitv was am modrewrite zu sein, daher hab ich das für die Fehlerpage ausgeschaltet. Bitte den Code im
./cms/front_crcloginform.inc.php
austauschen
ALT
Code: Alles auswählen
$sUrl = $cfgClient[$client]["path"]["htmlpath"]."front_content.php";
// edit by stese - modrewrite
$strErrorUrl = $sUrl;
if ($err_catart!='') {
$strErrorUrl.="?idcatart=".$err_catart;
}
if ($err_art!='' && $err_cat!='') {
$strErrorUrl.="?idcat=".$err_cat."&idart=".$err_art;
}
if ($err_cat!='') {
$strErrorUrl.="?idcat=".$err_cat;
}
if ($err_art!='') {
$strErrorUrl.="?idart=".$err_art;
}
if ( $cfg['mod_rewrite']['use'] == 1 ) {
if ( preg_match ( "/^front_content\.php(.*|.+?)/i", $strErrorUrl, $arr_hits ) == 1 ) {
$strErrorUrl = ModRewrite::build_new_url($arr_hits[1]);
}
}
header("Location: ".$cfgClient[$client]["path"]["htmlpath"].$strErrorUrl);
Code: Alles auswählen
//$sUrl = $cfgClient[$client]["path"]["htmlpath"]."front_content.php";
$sUrl = "front_content.php";
// edit by stese - modrewrite
$strErrorUrl = $sUrl;
if ($err_catart!='') {
$strErrorUrl.="?idcatart=".$err_catart;
}
if ($err_art!='' && $err_cat!='') {
$strErrorUrl.="?idcat=".$err_cat."&idart=".$err_art;
}
//if ($err_cat!='') {
// $strErrorUrl.="?idcat=".$err_cat;
//}
//if ($err_art!='') {
// $strErrorUrl.="?idart=".$err_art;
//}
if ( $cfg['mod_rewrite']['use'] == 2 ) {
if ( preg_match ( "/^front_content\.php(.*|.+?)/i", $strErrorUrl, $arr_hits ) == 1 ) {
$strErrorUrl = ModRewrite::build_new_url($arr_hits[1]);
}
}
header("Location: ".$cfgClient[$client]["path"]["htmlpath"].$strErrorUrl);
Weiterhin müssen natürlich in den Mandanteneinstellungen
Type: login_error_page
Name: idcat
Wert: ~~~NUMMER~~~
Type: login_error_page
Name: idcatart
Wert: ~~~NUMMER~~~
Type: login_error_page
Name: idart
Wert: ~~~NUMMER~~~
gesetzt sein, gelle!
Gruß
Soeren
----
Contenido 4.4.5, Contenido 4.6
Contenido 4.4.5, Contenido 4.6
Vergesst meinen geistigen Dünschiss von eben
Ist halt früh am Morgen.
Bitte einfach den Code in der
./cms/front_crcloginform.inc.php
durch folgenden ersetzen, dann klappts endgültig mit allen finessen und auch mit aktiviertem Rewrite.
Bitte einfach den Code in der
./cms/front_crcloginform.inc.php
durch folgenden ersetzen, dann klappts endgültig mit allen finessen und auch mit aktiviertem Rewrite.
Code: Alles auswählen
<?php
/******************************************
* File : main.loginform.php
* Project : Contenido
* Descr : Login form
*
*
* Author : Jan Lengowski
* Created : 21.01.2003
* Modified : 21.01.2003
* Modified : 29.09.2005, Andreas Lindner
*
* © four for business AG
******************************************/
global $cfg, $idcat, $idart, $idcatart, $lang, $client, $username;
// edit by stese - include modrewrite functions
cInclude("classes","class.modrewrite.php");
$err_catart = trim(getEffectiveSetting("login_error_page", "idcatart", ""));
$err_cat = trim(getEffectiveSetting("login_error_page", "idcat", ""));
$err_art = trim(getEffectiveSetting("login_error_page", "idart", ""));
//$sUrl = $cfgClient[$client]["path"]["htmlpath"]."front_content.php";
$sUrl = "front_content.php";
// edit by stese - modrewrite
$strErrorUrl = $sUrl;
if ($err_catart!='') {
$strErrorUrl.="?idcatart=".$err_catart;
}
if ($err_art!='' && $err_cat!='') {
$strErrorUrl.="?idcat=".$err_cat."&idart=".$err_art;
}
if ($err_cat!='') {
$strErrorUrl.="?idcat=".$err_cat;
}
if ($err_art!='') {
$strErrorUrl.="?idart=".$err_art;
}
if ( $cfg['mod_rewrite']['use'] == 1 ) {
if ( preg_match ( "/^front_content\.php(.*|.+?)/i", $strErrorUrl, $arr_hits ) == 1 ) {
$strErrorUrl = ModRewrite::build_new_url($arr_hits[1]);
}
}
//header("Location: ".$cfgClient[$client]["path"]["htmlpath"].$strErrorUrl);
header("Location: ".$strErrorUrl);
if (isset($_GET["return"]) || isset($_POST["return"])){
$aLocator = Array();
if ($idcat > 0) {
$aLocator[] = "idcat=$idcat";
}
if ($idart > 0) {
$aLocator[] = "idart=$idart";
}
if (isset($_POST["username"]) || isset($_GET["username"])){
$aLocator[]= "wrongpass=1";
}
$strErrorUrl = $sUrl . "?" . implode("&", $aLocator);
if ( $cfg['mod_rewrite']['use'] == 1 ) {
if ( preg_match ( "/^front_content\.php(.*|.+?)/i", $strErrorUrl, $arr_hits ) == 1 ) {
$strErrorUrl = ModRewrite::build_new_url($arr_hits[1]);
}
}
header ("Location: " . $cfgClient[$client]["path"]["htmlpath"]. $strErrorUrl);
}
// set form action
$strFromAction = $sUrl;
if ( $cfg['mod_rewrite']['use'] == 1 ) {
if ( preg_match ( "/^front_content\.php(.*|.+?)/i", $strFromAction, $arr_hits ) == 1 ) {
$strFromAction = ModRewrite::build_new_url($arr_hits[1]);
}
}
// end edit
?>
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
<title>:: :: :: :: Contenido Login</title>
<link rel="stylesheet" type="text/css" href="../contenido/styles/contenido.css" />
<script language="javascript">
if (top != self)
{
top.location.href = self.location.href;
}
</script>
</head>
<body>
<table width="100%" cellspacing="0" cellpadding="0" border="0">
<!--
<tr height="70" style="height: 70px">
<td style="background-image:url(images/background.jpg); border-bottom: 1px solid #000000">
<img src="images/conlogo.gif">
</td>
</tr>-->
<tr height="400">
<td align="center" valign="middle">
<form name="login" method="post" action="<?php /* edit by stese - modrewrite */ print $strFromAction; ?>">
<table cellspacing="0" cellpadding="3" border="0" style="background-color: <?php echo $cfg['color']['table_light'] ?>; border: 1px solid <?php echo $cfg['color']['table_border'] ?>">
<tr>
<td colspan="2" class="textw_medium" style="background-color: <?php echo $cfg["color"]["table_header"] ?>; border-bottom: 1px solid <?php echo $cfg["color"]["table_border"] ?>">Login</td>
</tr>
<tr>
<td colspan="2"></td>
</tr>
<?php if ( isset($username) ) { ?>
<tr>
<td colspan="2" class="text_error">Invalid Username or Password!</td>
</tr>
<?php } else { ?>
<tr>
<td colspan="2" class="text_error"> </td>
</tr>
<?php } ?>
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td class="text_medium">Username:</td>
<td><input type="text" class="text_medium" name="username" size="20" maxlength="32" value="<?php echo ( isset($this->auth["uname"]) ) ? $this->auth["uname"] : "" ?>"></td>
</tr>
<tr>
<td class="text_medium">Password:</td>
<td><input type="password" class="text_medium" name="password" size="20" maxlength="32">
<input type="hidden" name="vaction" value="login">
<input type="hidden" name="formtimestamp" value="<?php echo time(); ?>">
<input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
</td>
</tr>
<tr>
<td colspan="2" align="right">
<input type="image" title="Login" alt="Login" src="../contenido/images/but_ok.gif">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<script type="text/javascript">
if (document.login.username.value == '') {
document.login.username.focus();
} else {
document.login.password.focus();
}
</script>
</body>
</html>
----
Contenido 4.4.5, Contenido 4.6
Contenido 4.4.5, Contenido 4.6