PHP PHP include

Stato
Discussione chiusa ad ulteriori risposte.

DarkSide1

Utente Jade
14 Giugno 2010
1,917
199
146
841
Salve, volevo provare a creare un sito includendo tipo il file home.php nel main, esempio

$s = $_GET['s'];

if($s == 'Home')
include home.php

tralasciando errori , la mia domanda era se si poteva "oscurare" il file home.php in modo che sia possibile includerlo ma se uno va al link www.sito.it/home.php gli dia errore.
 
Secondo me dovresti lavorare sui comandi file, ovvero "fopen" , "fread" e mettere all'inizio del file home.php un header per il famoso problema 403 ( accesso negato) e praticamente tramite fopen devi cercare di lavorare sulla stringa e far poi eseguire lo script dopo l'header... oppure levandolo
 
Ma tipo sul cpanel non c'e un' opzione per bloccare i file? cmq io con include richiamo il codice non la pagina quindi in teoria dovrebbe funzionare...
 
Se tu includi tutto il file home.php ti include anche l'header di 403 , oppure potresti fare che crei un if dove per esempio chiedi se è definita una variabile...:
Codice:
// home.php
if(!isset($prova)){
[COLOR=#333333][FONT=Consolas]header('HTTP/1.1 403 Forbidden');[/FONT][/COLOR]
}

//index.php
$prova = 1 ;
include home.php;
 
Già ti ha risposto Davide... io onestamente la rewrite non ancora ho modo di usarla e tantomeno sapere come funzioni...
Comuqnue ti ricordo di usare le ob di php...
 
Scusate, ma invece di tutto questo schifo:

index.php ->

define('IN_SITE', NULL);

home.php ->
if ( ! defined('IN_SITE')){ die('Direct access is not allowed'); }

Inoltre, ob di php cosa centra in questo contesto carbos?
 
  • Mi piace
Reazioni: DarkSide1
Se vuoi rinominare le tue pagine basta che fai
RewriteEngine On
RewriteRules pagina.php ^pagina

Ps: Non la uso da chissa quanto tempo spero sia giusta :3 in htaccess la devi mettere ovviamente, senno segui quello che ha scritto mavin
 
Mavin, per gli header :\ che in alcuni casi php ti dà errore negli header <.< ed io sistemo con le ob
 
Scusate, ma invece di tutto questo schifo:

index.php ->

define('IN_SITE', NULL);



home.php ->
if ( ! defined('IN_SITE')){ die('Direct access is not allowed'); }

Inoltre, ob di php cosa centra in questo contesto carbos?

nn vedo nulla di diverso da quello postato in precedenza tranne x il fatto che lui usa variabile mentre tu un define ...
cmq nella home.php potresti anche fare un check sulla PHP_SELF dell'array $_SERVER.
 
nn vedo nulla di diverso da quello postato in precedenza tranne x il fatto che lui usa variabile mentre tu un define ...
cmq nella home.php potresti anche fare un check sulla PHP_SELF dell'array $_SERVER.

1) Usare una costante è molto più semplice e veloce, le variabili servono ad altro, non sono fatte per questo tipo di scopi, anche se nessuno vieta di utilizzarle.
2) Utilità?
 
Ultima modifica:
1) Usare una costante è molto più semplice e veloce, le variabili servono ad altro, non sono fatte per questo tipo di scopi, anche se nessuno vieta di utilizzarle.
2) Utilità?
1) semplice rispetto a che e velocità in materia di cosa? di esecuzione ?
2) l'utilità è la risposta allo scopo di questo 3d.
 
CHIEDO SCUSA SE RISPONDO AD UN TOPIC FERMO DA 2 SETTIMANE.

Detto questo, visto che quando guardi la sorgente di una pagina il codice PHP non viene mostrato potresti includere la home.php usando un GET così che se visitano la pagina senza mettere tipo "home.php?vis=ok" risulta pagina bianca o redirecta alla index.php..
Ovviamente home.php deve essere strutturata in modo da seguire questa "regola"..
 
  • Mi piace
Reazioni: Bannax
CHIEDO SCUSA SE RISPONDO AD UN TOPIC FERMO DA 2 SETTIMANE.

Detto questo, visto che quando guardi la sorgente di una pagina il codice PHP non viene mostrato potresti includere la home.php usando un GET così che se visitano la pagina senza mettere tipo "home.php?vis=ok" risulta pagina bianca o redirecta alla index.php..
Ovviamente home.php deve essere strutturata in modo da seguire questa "regola"..

che???
 
Usare il GET per ottenere il contenuto della pagina.. con un IF imposti che se la pagina è stata aperta tramite l'url con il GET scelto mostra il codice (che viene incluso tramite include) mentre se una persona mette nel browser il link senza il GET corretto la pagina risulta bianca o reindirizza alla index..

E' uno dei possibili metodi.. tanto da sorgente non puoi leggere "include 'home.php?vis=ok';" (ho usato 'vis=ok' come esempio) di conseguenza senza sapere il GET corretto pur sapendo che esiste quel file non lo puoi aprire..
 
  • Mi piace
Reazioni: Bannax
Usare il GET per ottenere il contenuto della pagina.. con un IF imposti che se la pagina è stata aperta tramite l'url con il GET scelto mostra il codice (che viene incluso tramite include) mentre se una persona mette nel browser il link senza il GET corretto la pagina risulta bianca o reindirizza alla index..

E' uno dei possibili metodi.. tanto da sorgente non puoi leggere "include 'home.php?vis=ok';" (ho usato 'vis=ok' come esempio) di conseguenza senza sapere il GET corretto pur sapendo che esiste quel file non lo puoi aprire..

Ok adesso ho capito qualcosa, ma è un metodo scomodissimo considerando che sopra ne abbiamo consigliati di migliori!
 
Stato
Discussione chiusa ad ulteriori risposte.