Ich muss den Text "Willkommen Benutzername" anzeigen, sobald ein Benutzer angemeldet ist, und "Login" -Link anzeigen, wenn nicht angemeldet oder wenn Cookie abgelaufen. Der Text, den ich anzeigen muss, ist jedoch in index.php und die Benutzerauthentifizierung erfolgt über checklogin.php.Text auf einer Seite dynamisch als Reaktion auf ein Ereignis auf einer anderen Seite in einem anderen Fenster aktualisieren
Ich bin mir nicht sicher, wie man den Text auf index.php (ohne Aktualisierung/dynamisch) aktualisiert, da das Ereignis für die Authentifizierung auf einer anderen Seite checklogin.php durchgeführt wird. Beachten Sie, dass die Anmeldeseite mit '_blank' auf der neuen Seite geöffnet wird.
Ich gebe den folgenden Code wieder: danke für Ihre Zeit.
index.php
<?php
if ($_COOKIE['cookieName']) { echo '<li>Welcome '. $_COOKIE['cookieName']; echo'|'; echo '<a href="logout.php" target="_blank">Logout</a> </li>'; }
else {echo' <li><a href="login.php" target="_blank" class="login">Login</a> | <a href="user_add.php" target="_blank" class="login">Register</a></li> '; }
?>
login.php
<form action="checklogin.php" method="post" name="form" id="form">
<input type="text" name="username" value = '' />
<input type="password" name="password" value = '' />
<input name="submit" type="submit" value="Log me in." class="button"/>
checklogin.php
$sql="SELECT * FROM users WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
// Mysql_num_row is counting table rows
$count=mysql_num_rows($result);
if($count==1){
$cookie_name ="$cookiename";
$cookie_expire ="300";
setcookie($cookie_name,$cookie_value,time() + (300),"/", $cookie_domain);
header("location:$successfulLogin_url");
}
else{
header("location:$failedLogin_url");
}
Angenommen, 'index.php' öffnet das Fenster, das' checklogin.php' enthält, dann können Sie die Eigenschaft 'window.opener' verwenden, um auf das Hauptfenster zuzugreifen. Sie haben jedoch nicht wirklich gesagt, welches Ereignis Sie behandeln möchten. –
Bei erfolgreicher Anmeldung wird der Cookie gesetzt. Ich muss den Text in der index.php in diesem Moment ändern. Außerdem ist die Anmeldeseite tatsächlich eine neue Seite '_blank' anstelle eines Fensters. – learner