2016-12-13 1 views
1

En haut de chaque page que j'ai un en-tête (header.inc.php) qui a un champ de connexion que j'ajouter avecPHP - actualiser la page entière à partir d'un fichier inclus?

include 'login.php'; 

Le code il y a:

<?php 
    include 'checkPassword.php'; 
    if (isset($_POST['login'])) { 
     if (checkLogin($_POST['username'], $_POST['password'])) { 
      session_start(); 
      $_SESSION['isLoggedIn'] = true; 
      header("Refresh:0"); 
      exit(); 
     } else { 
      echo '<h1>nope</h1>'; 
     } 
    } 

?> 

<div id="login"> <!-- Login field with link to registration --> 
    <fieldset> 
    <form method="POST" action="login.php"> 
    <Legend>Login</Legend> 
    Username <input type="text" name="username" <?php if (isset($username)) {echo "value=$username";} ?>> 
    Password <input type="password" name="password"/> 
    <input type="submit" name="login"> 
    <div id="register"> 
     <a href="registration.html">Not a member? Click here to register!</a> 
    </div> 
    </form>  
    </fieldset> 
</div> 

J'ai vu quelques méthodes différentes pour utiliser header() pour charger une certaine page, mais la connexion apparaît en haut de chaque page, donc je voudrais un moyen pour le PHP de se référer à lui-même. Cependant, toutes les méthodes que j'ai trouvées jusqu'ici se réfèrent à 'login.php', au lieu de la page la page globale qui contient l'en-tête et la connexion.

+1

'header ('Refresh: 0; index.php'),' cela devrait être l'en-tête – Blueblazer172

+0

@ Blueblazer172 index.php un nom spécial? Mes identifiants apparaitront sur registration.php, search.php etc. Donc j'espérais des variables d'auto-référencement, sans que j'aie besoin d'ajouter manuellement des arguments –

+0

vous devez mettre un fichier valide pour rediriger vers – Blueblazer172

Répondre

-1

essayez celui-ci

<?php 
include 'checkPassword.php'; 
if (isset($_POST['login'])) { 
    if (checkLogin($_POST['username'], $_POST['password'])) { 
     session_start(); 
     $_SESSION['isLoggedIn'] = true; 
     header("Refresh:0"); 
     exit(); 
    } else { 
     echo '<h1>nope</h1>'; 
    } 
} 

?> 

Il rafraîchit votre page en cours, et si vous avez besoin de le rediriger vers une autre page, l'utilisation suivante:

header("Refresh:0; url=page2.php"); 

écho balise meta comme ceci: URL est la celui où la page devrait être redirigée après l'actualisation.

echo "<meta http-equiv=\"refresh\" content=\"0;URL=upload.php\">"; 
+0

'header (" Refresh: 0; url = page2.php ");' n'est pas correct. btw comment différent est votre réponse à mon commentaire ... – Blueblazer172

+0

oui mais je ai suggéré un peu plus @ Blueblazer172 –

+0

mais vous répondez n'est pas 100% du code correct ... – Blueblazer172