v2.5.2
Giriş yap

Php ile include ile çağrılan sayfayı engellemek

Anonim
270 defa görüntülendi ve 2 kişi tarafından değerlendirildi

arkadaşlar selam ben include yada require ile .php sayfasını index.php sayfasına cağırdım fakat kullanıcılar url kısmına navbar.php yazdığı zaman erişebilecekler bunların erişmemesi içinnasıl bir önlem alırım

Cevap yaz
Cevaplar (1)
ebykdrms
937 gün önce

Merhaba. Diyelim ki sayfa.php dosyasında navbar.php dosyasını include ediyorsunuz. Bu durumda sayfa.php sayfasında bir değişken oluşturursunuz ve navbar.php sayfasında bu değişkenin varlığını kontrol edersiniz. Şöyle ki:
sayfa.php

<?php 
    define("CONTROL", true); // CONTROL adında bir sabit değişken oluşturduk.
?>
<html>
    <head>
        <title>Sayfa</title>
    </head>
    <body>
        <?php include("navbar.php"); ?>
        <div>Sayfa içeriği</div>
    </body>
</html>

Şimdi de navbar.php sayfanızın başında, CONTROL adlı bir değişkenin oluşturulup oluşturulmadığını kontrol edebiliriz.
navbar.php

<?php if(!isset(CONTROL)) { echo "Bu sayfaya doğrudan erişemezsiniz!"; exit(); ?>
<nav>
    navbar içeriğim
</nav>

Bu şekilde, navbar.php dosyasının sadece CONTROL adlı bir sabit değişken oluşturulmuş sayfalardan erişilebilmesini sağlamış olursunuz.
Bu yöntem PHP'nin Codeigniter framework'ünde kullanılıyor. Muhtemelen diğer framework'lerde de kullanılıyordur.