Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2694 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Probleme session combiné aux frames

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme session combiné aux frames

n°1575673
osok
Posté le 15-06-2007 à 17:21:27  profilanswer
 

Bonjour à tous.
 
Voici mon problème sans plus attendre.
J'ai une page qui permet de se logger et ensuite d'acceder à l'arborescence du dossier (avec possibilité d'acceder au contenu des sous dossiers etc...).
 

Code :
  1. <?php
  2. if(!isset($_SESSION['level'])){
  3.  echo "<table width='60%' border='0' class='label'>";
  4.  echo "<tr><td>Access denied</td></tr></table>";
  5. }else{
  6.  echo "<span class='label'> Username: ".$_SESSION['username']."<br>";
  7.  echo "Authorization's level: ".$_SESSION['level']."</span>";
  8.  echo "<table width='60%' border='0' class='label'>";
  9.  if(isset($_GET['folder']))
  10.   $_SESSION['current_directory'] = $_SESSION['current_directory'].$_GET['folder'];
  11.  $folder = opendir($_SESSION['current_directory']);
  12.  while ($data = readdir($folder)) {
  13.   if ($data != "." ) {
  14.    echo "<tr><td>";
  15.    if(is_dir($data)){
  16.     echo "<a href='ftp_service.php?folder=".$data."'>".$data."</a>";
  17.    }
  18.    else{
  19.     echo "<a href=".$data.">".$data."</a>";
  20.    }
  21.    echo "</td></tr>";
  22.    }
  23.  }
  24.  closedir($folder);
  25.  echo "</table>";
  26. }
  27. ?>


 
Voici mon code (affiche l'arborescence, le connexion est sur un autre fichier)
Je vérifie si le mec est loggé (if(!isset($_SESSION['level']))), s'il n'existe pas je lui met un message d'erreur sinon l'arborescence.
Quand on rencontre un dossier je met juste un lien dessus (echo "<a href='ftp_service.php?folder=".$data."'>".$data."</a>";).
 
Alors le truc c'est que je crée une session juste avant lors de la connexion (en initialiser toutes les variables). Donc la connexion marche bien (j'ai un listing des fichiers & dossiers), ca m'affiche les infos utilisateurs + arborescence. Mais lorsque je clik sur un dossier (pour qu'il m'affiche son contenu), il m'affiche Access Denied (donc que je n'ai pas de session).
J'ai essayé en passant la session id sur le lien etc. et rien ne marche. Pourtant normalement ca devrait marcher mais...
 
Pour info, j'utilise les frames (4 en tout, un header, un gauche, un droite et un milieu où sont affichées les infos).
 
Merci de votre aide.
 
ps: une petite question au passage, comment faire pour que quand un mec clik sur un fichier, il l'ouvre pas ds la frame mais propose directement la ptite boite d'enregistrement?

mood
Publicité
Posté le 15-06-2007 à 17:21:27  profilanswer
 

n°1575725
kmeleon1
Ubuntu Forweeeeever
Posté le 15-06-2007 à 21:34:46  profilanswer
 

Une solution: arrete les frames, met toi au XHTML + CSS, tout ça (les frames et ta construction en tableaux) c'est dépassé.
Petite remarque: évite de faire une suite de echo(), privilégie plutôt le texte brut hors balises <?php ?>, parce que sinon c'est une charge serveur inutile qui est imposée.
 
Bonne soirée

n°1576491
osok
Posté le 18-06-2007 à 19:38:41  profilanswer
 

Ok je vais changer ca alors.
 
Et quelqu'un sait alors si on peut forcer le navigateur à ouvrir le boite de dialogue permettant d'enregistrer un fichier à la place d'ouvrir le fichier directement ds le navigateur lors d'un clik?

n°1576523
kmeleon1
Ubuntu Forweeeeever
Posté le 18-06-2007 à 21:21:56  profilanswer
 

Rien capté


---------------
.:: Kmeleon ::.
n°1576789
osok
Posté le 19-06-2007 à 14:28:41  profilanswer
 

Je veux faire une espèce de navigateur ftp (un peu comme quand tu accède à un site sans index, ca t'affiche la liste des fichiers et dossiers).
 
Le probleme c'est que lorsque tu es dans l'arborescence, si tu clic sur un fichier de type html par exemple, le navigateur va afficher ce fichier.
Ce que j'aimerais c'est ne pas afficher le fichier, mais proposer à l'utilisateur d'enregistrer ce fichier html sur son disque dur.
Mais je ne sais pas si c'est possible d'où ma question.
 
J'espere avoir été plus clair.

n°1576790
anapajari
s/travail/glanding on hfr/gs;
Posté le 19-06-2007 à 14:32:45  profilanswer
 

keywords: mime type

n°1576917
osok
Posté le 19-06-2007 à 17:01:38  profilanswer
 

Heu j'ai pas compris

n°1576924
cgo2
Dum spiro spero
Posté le 19-06-2007 à 17:09:23  profilanswer
 

Il te donne des mots clefs pour faire une recherche (google ou autre).  
 
Mais en l'occurence, le type mime seul ne t'aidera pas du tout, faudrait plutôt chercher des mots clefs genre "forcer téléchargement".
 
Tu devrais avoir des résultats expliquant les bons header à mettre. Il me semble que c'est un truc du genre :

Code :
  1. Content-Disposition: attachment; filename = "toto.html"


---------------
When it's from Finland it's good.  - Mon blog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Probleme session combiné aux frames

 

Sujets relatifs
[HLSL] Problème de positionnementProbleme permission en local
Probléme avec script pour modifier une table Mysql probleme de liste déroulante
probleme de label dans un formulaireproblème installation forum phpbb
Probléme de flux avec Runtime.exec()probleme avec classe
problème d'affichage IE/FirefoxProblème affichage menu déroulant CSS/java sous IE
Plus de sujets relatifs à : Probleme session combiné aux frames


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR