Hallo liebe community,
ich bin gerade an meiner Internetseite am Arbeiten und habe so weit alles fertig. Nur jetzt habe ich ein Problem beim Login für die Seiten die nur Mitgliedern zugänglich sind.
Also ich habe einen Hyperlink der so aussieht index.php?section=login nun wird die Datei login.php aufgerufen. In einem der dafür definierten Div.
Wenn man seine Daten in den Login eingegeben hat drücke ich auf den butten Login nur es passiert nichts ich werde zur Index.php weiter geleitet aber es wurde kein Cookie gesetzt. Dies Merke ich daran wenn ich auf eine der Memberseiten gehen nicht rein komme.
Öffne ich nun den Login mit dieser URL
www.namederseit.de/login.php und loge mich mit dieser Seite ein geht alles ohne Probleme und der Cookie wird auch gesetzt und ich habe zugriff auf meine Memberseiten.
Hier ist der Code von meiner login.php
|
PHP Source code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
<?php require_once('mysql/mysql.php'); ?>
<?php
// Login setzt den Cookie
$myUsername_rsLogin = "0";
if (isset($HTTP_POST_VARS['username'])) {
$myUsername_rsLogin = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['username'] : addslashes($HTTP_POST_VARS['username']);
}
$myPassword_rsLogin = "0";
if (isset($HTTP_POST_VARS['password'])) {
$myPassword_rsLogin = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['password'] : addslashes($HTTP_POST_VARS['password']);
}
mysql_select_db($database_loginphp, $loginphp);
// Überprüft ob der Login korrekt ist
$query_rsLogin = sprintf("SELECT user_name, user_pw FROM phpkit_user WHERE user_name= '%s' AND user_pw = '%s'", $myUsername_rsLogin,$myPassword_rsLogin);
$rsLogin = mysql_query($query_rsLogin, $loginphp) or die(mysql_error());
$row_rsLogin = mysql_fetch_assoc($rsLogin);
$totalRows_rsLogin = mysql_num_rows($rsLogin);
// Login und Set cookie
// Der Login wird geprüft, Cookie wird gesetzt und weiterleitung oder Zeige Fehlermeldung
if($HTTP_POST_VARS['action']=="login"){
if($totalRows_rsLogin==0){
$errorMessage = "falsch";
mysql_free_result($rsLogin);
} else {
mysql_free_result($rsLogin);
setCookie("user",$HTTP_POST_VARS['username'],time() + 259200,"/");
// Lebensdauer in Tagen: 3
// Lebensdauer in Zeit: 10:00:00
header("Location: ../details.php");
}
}
?><!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable -->
<script type="text/javascript">
<!--
function MM_displayStatusMsg(msgStr) { //v1.0
window.status=msgStr;
document.MM_returnValue = true;
}
//-->
</script>
<!-- TemplateParam name="login" type="boolean" value="true" -->
<!-- TemplateBeginRepeat name="login" --> <!-- TemplateBeginIf cond="_document['login']" --> <!-- TemplateBeginEditable name="login" --> <?php echo "$errorMessage"; ?>
<form action="<?php echo "$PHP_SELF"; ?>" method="post" name="form1" id="form1" >
<table width="60%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="40%" align="right"><font color="#000000" size="2" face="Verdana, Arial, Helvetica, sans-serif">User Name:</font></td>
<td width="60%"><input name="username" type="text" id="username" onfocus="MM_displayStatusMsg('Please enter your User Name');return document.MM_returnValue" maxlength="50" /></td>
</tr>
<tr>
<td width="40%" align="right"><font color="#000000" size="2" face="Verdana, Arial, Helvetica, sans-serif">Password:</font></td>
<td width="60%"><input name="password" type="password" id="password" onfocus="MM_displayStatusMsg('Please enter your Password');return document.MM_returnValue" maxlength="50" /></td>
</tr>
<tr>
<td width="40%"> </td>
<td width="60%"><input type="submit" name="Submit" value="Log In" /></td>
</tr>
</table></td>
</tr>
</table>
<input name="action" type="hidden" id="action" value="login" />
</form>
<!-- TemplateEndEditable --><!-- TemplateEndIf --><!-- TemplateEndRepeat -->
|
meine Index.php sieht so aus dieser Code befindet sich in einem DIV
|
PHP Source code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<?php
// die Datei index.php
switch($_GET['section']) {
case "reg":
include "registration.php";
break;
case "login":
include "login.php";
break;
case "de":
include "details.php";
break;
case "logout":
include "logout.php";
break;
default: // Wenn eine ungültige Section angegeben wurde
// sollen die News gezeigt werden
include "news.php";
break;
}
?>
|
Wo dran kann das liegen ich würde mich sehr über eine Antwort freuen.
MFG Flip