[PHP] Ouvrir ma zone membre dans une nouvelle fenêtre

Nouveau WRInaute
Salut à tous,

J'ai un simple problème d'ouverture de page php là où je ne veux pas.

Je m'explique:

J'ai ma page index.php divisée en différents div pour le css:

index.php
Code:
<?php
if(!isset($_SESSION)) 
{
 session_start();
}
?> 


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<link href="cssindex.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="header">
<?php
include "menu.php";
?>
</div>

<div id="corps">
<?php

  // On définit le tableau contenant les pages autorisées
  // ----------------------------------------------------
  $pageOK = array('page1' => 'page1.php',
                  'page2' => 'page2.php',
				  'pageprotegee' => 'pageprotegee.php',
				  'deconnexion' => 'deconnexion.php',
				  'accueil' => 'accueil.php');

  // On teste que le paramètre d'url existe et qu'il est bien autorisé
  // -----------------------------------------------------------------
  
  if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])))
  {
    include($pageOK[$_GET['page']]);  
  } 
   else    
  {
  include('accueil.php');   // Page par défaut quant elle n'existe pas dans le tableau
  }
?>
</div>
</body>
</html>


Si je clique sur "page protégée", voici le code de ma page pageprotegee.php:

Code:
<?php
if (($logOK=true)&& (isset($_SESSION['login']))&&(isset($_GET['page'])))

{
echo $_SESSION['login'];


?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
</head>
<body>


"Bienvenue sur la page protégée"

<?php
}
else
{
include "zonemembre.php";
}




?>
</body>
</html>

Le problème est là. "include "zonemembre.php" Je voudrais qu'il m'inclut cette zone membre dans une nouvelle fenêtre de mon navigateur. Je veux juste voir cette page zonemembre sans rien d'autre.

Hors, pour l'instant il m'affiche de nouveau la page index.php avec au centre ma zone membre.

Pouvez-vous m'aider SVP.

Jhon :D[/u]
 
Nouveau WRInaute
En fait, le principe ce serait que la page de connexion à la zone membre soit à chaque fois sur une nouvelle page dans la navigateur mais je ne sais pas comment faire au niveau de l'emplacement de mon code php et des liens hypertext du menu qui se trouve à gauche.

Tu as peut toi même le code php d'un site ou ils procèdent de la sorte ??

Je préfère rester au php en évitant d'utiliser le javascript.

D'avance merci
 
WRInaute accro
tu veux qu'au moment ou ils valident l identification, ca ouvre une nouvelle fenetre (target dans le cham form) ? ou autre chose ?

ps : pas genial d'ouvrir une nouvelle fenetre, tu va agacer certains internautes
 
WRInaute passionné
1 - Supprimer de ton tableau PageOk la page concernée
2 - Créer le lien suivant
<a href='http://www.example.com'/pageprotegee.php' onclick="window.open(this.href,'_blank');return false;" title="">

sur la page où tu souhaite appeler l'espace protégé.

Attention la nouvelle fenetre se gère coté client et non coté serveur.
 
Nouveau WRInaute
Aussi non, e-kiwi,comment je peux faire pour que la page zone membre s'ouvre au centre et que tout se passe toujours au centre.

Tu vois quand j'ai mon formulaire où je rentre login et lot de passe à l'écran, soit ce que le user rentre est ok et là il m'affiche la page demandée, ça il ny' a pas de problème. Mais si le login ou le mot de passe est mauvais, je ne sais pas pourquoi il m'ouvre alors une nouvelle page dans le navigateur.

Est-ce que je m'exprime bien ?

Je te joins le code de ma page qui vérifie les données entrées verif.php:
Code:
<?php
session_start();

//ici on vérifie que le mot de passe et le login entrés existent dans la base de données mysql
$logOK=false;

$login=$_POST['login'];
$mot_de_passe=$_POST['mot_de_passe'];

$db=mysql_connect('localhost','root','') or die("erreur de connexion");
mysql_select_db ('immobay',$db) or die ("erreur de connexion");

$login=addslashes($login);
$mot_de_passe=addslashes($mot_de_passe);

$reqlog = mysql_query("SELECT * FROM users WHERE login='$login' AND mot_de_passe='$mot_de_passe'")or die(mysql_error());
$log=mysql_num_rows($reqlog);//on compte le nombre de ligne et ON met ce nombre dans la VARIABLE $log
$info_user=mysql_fetch_array($reqlog);//on regroupe les informations obtenues sur ce user dans un tableau afin de les utiliser pour créer des variables de SESSION (prenom, nom,etc)

//TEST de la variable $log

if ($log==1)

{
$_SESSION['login'] = $info_user['login'];
$_SESSION['mot_de_passe'] = $info_user['mot_de_passe'];

$_SESSION['prenom']=$info_user['prenom'];
$_SESSION['nom']=$info_user['nom'];
$_SESSION['id']=$info_user['id']; 

$logOK=true;//variable mise à TRUE car le user s'est bien identifié

include 'index.php';
}
elseif ($log==0)
{
include"zonemembre.php";
session_destroy();
}
mysql_close($db);

?>

Si vous arribez à me trouvez une soluce, ce serait génial. Pour le moment, je suis complètement démotivé. Je trouve pas.

Un grand merci. :D

Jhon
 
Discussions similaires
Haut