problema con include

Volevo chiedervi se sapete di una possibile restrizione della funzione include. Mi spiego meglio: ho una pagina con un menu che passa una variabile alla pagina centrale, la quale la elabora e a seconda del valore richiama un'altra pagina alla quale passa ancora la variabile in cosiderazione. Il problema è che facendo include con argomento solo il nome della pagina, la apre normalmente. Se invece come argomento nell'include metto anche la variabile col metodo get, è come se la pagina non esistesse e non fa niente.

Volevo sapere se magari il problema consiste nel fatto che il parametro attraversa 3 pagine e non due come normalmente.

Ecco il codice della pagina centrale, quella che prende il parametro dal menu, lo elabora e reindirizza all'altra pagina, cioè category.php

if($_GET['act'] == 'cat')
    $par="category.php?CatId=".$_GET['CatId']."";
    include ($par);
inviato 10 anni fa
AndyB
modificato 10 anni fa
X 0 X

Stai confondendo la richiesta di un URL effettuata dal browser nei confronti del server con l'inclusione di un file richiesto da uno script PHP (server). Nel primo caso l'URL può contenere anche dei parametri che vengono passati alla pagina richiesta (metodo GET), nel secondo caso invece non è concesso.

Comunque non hai la necessità di passare dei valori con la include() poiché lo script che viene incluso ha accesso a tutte le variabili dello script chiamante.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Sapete perchè se facendo due include di due pagine diverse, dopo la seconda include non viene considerato tutto il codice seguente? Ho letto sul sito ufficiale di PHP che un errore viene generato se viene incluso due volte lo stesso file, ma nel mio caso non è lo stesso..  :-\

risposto 10 anni fa
AndyB
X 0 X

Non è vero che si ottiene un errore semplicemente includendo più volte uno stesso file. Solo se il file in questione contiene delle funzioni o delle classi si ottiene l'errore, poiché il PHP non accetta dichiarazioni multiple.

Secondo me il problema che hai non dipende dagli include.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda