Laat php toe een beveiligde directory te gebruiken

Status
Niet open voor verdere reacties.
hoe gebruik je de if dan?
Laat ons dat script eens zien!
 
PHP:
<?php include('stam/check.php');
if($toelating=="1") {
header("Content-type: image/jpeg");
$image=imagecreatefromjpeg("img/" . $_GET['img']);
imagejpeg($image); 
}else{ header("Content-type: image/jpeg");
$image=imagecreatefromjpeg("img/niet_ingelogd.jpg");
imagejpeg($image); }
  ?>
 
doe eens if($toelating == 1)

Heb je het ingelogd zijn niet opgeslagen in een session? want dan zou je kunnen kijken of de session bestaat en dat de inhoud 1 moet zijn.

Verder ziet de if else er goed uit.
 
ik heb mijn $toelating variabele ingesteld als string "1"... en het werkt op de andere pagina's... dus wrm hier niet? en volgens mij maakt het niet echt uit of dat in een string staat of als een integer... (of voor dit script wel ?? zou mij verwonderen)
en ja... hy is opgeslagen in een session, maar heb het ook al geprobeerd... (wat hetzelfde resultaat gaf)
 
probeer het zo eens!

PHP:
<?php include('stam/check.php');
if($toelating=="1") {

$image=imagecreatefromjpeg("img/" . $_GET['img']);

}else{ 

$image=imagecreatefromjpeg("img/niet_ingelogd.jpg");
 
}
header("Content-type: image/jpeg");
imagejpeg($image); 
  ?>

en wat laat het zien als je wel ingelogd bent en als niet ingelogd bent?
 
je script werkt, maar ik heb session gebruikt ipv $toelating (gaf een error)... maar het probleem is dat ik de foto altijd kan oproepen... ook al staat session niet op 'yes'...
 
Dan is waarschijnlijk toelating altijd 1. Waar wordt die gezet?
 
als je controleer op isset($_SESSION['loggedIn'])

als je niet ingelogd bent hoort de session loggedIn niet te bestaan.

Anders moet je eens een print_r($_SESSION) doen om te kijken of de session voor het ingelogged zijn nog bestaat als je hebt uitgelogged
 
PHP:
<?php 
if(isset($_SESSION['login'] && ($_GET['img'] != "") {
 
$image=imagecreatefromjpeg("img/" . $_GET['img']);
 
}else{ 
 
$image=imagecreatefromjpeg("stam/niet_ingelogd.jpg");
 
}
header("Content-type: image/jpeg");
imagejpeg($image); 
  ?>

werkt ook niet
 
als je het dan helemaal goed wilt doen, dan test je ook of $_GET['image'] isset en controlleer dan ook of de extensie .jpg is en dan er geen .. / in de $_GET staan.
 
ja ok, maar dat zal niets veranderen aan de niet werkende controle van de sessie
 
ja hehe nu zie ik het, je hebt de session niet gestart op de pagina.
Dus hij zal de session niet vinden.
je moet het script beginnen met session_start();
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan