PDA

Visualizza versione completa : PHP e include


ekerazha
06-07-2002, 17.00.05
Sto convertendo il mio sito in PHP, per evitare di dover rifare ogni volta la stessa pagina, e poter sfruttare le comodità offerte dal comando INCLUDE. In pratica vorrei includere delle determinate cose (immagini e testo) prese da un file esterno, all'interno di una pagina. Fino qua tutto ok, ma come faccio a far cambiare la pagina da includere, a seconda del link su cui clicco?

Grazie.

Ov3rKuNtZ
06-07-2002, 18.16.18
:eek: kiami un'altra pagina ke ha un include!


hehehehe! :)

ekerazha
06-07-2002, 18.39.45
dai!!! :p aiuuutooo!! :(

quipo.it
06-07-2002, 18.52.46
La soluzione + semplice è:
ai link aggiungi un parametro, tipo:
<a href="myPage.php?ID=4">
in myPage poi c'è un array che associa il parametro ID alla pagina da includere...
chiaro? :)

ekerazha
06-07-2002, 19.05.17
No, sono a digiuno quasi totale di PHP, se puoi tagliamela giù a fette e spiegami (magari con degli esempi) cosa devo fare e dove lo devo fare.

Grazie mille mille mille.

quipo.it
06-07-2002, 20.14.34
Allora: dalla pagina chiamante metti i tuoi link con la variabile che passerai come parametro:

<a href="myPage.php?ID=4"> PAGINA 1 </a>
<a href="myPage.php?ID=5"> PAGINA 3 </a>
...


Poi, in myPage definisci un array associativo così:

$myArray = array (
1 => "pag1.php",
2 => "pag2.php",
...
);

a questo punto, metti una funz. di questo tipo nel punto in cui vuoi fare l'inclusione:

include($myArray[$_GET["ID"]]);

... ocio, che anche se abbastanza sicuro, questo sistema non è proprio a prova di hacker... ti suggerisco qualche controllo sulle variabili che ricevi via POST/GET...

ekerazha
06-07-2002, 21.15.47
Grazie 1000!!! :) Per i controlli non so neanche da dove iniziare, cmq va bene lo stesso, ciau e grazie (K)

quipo.it
07-07-2002, 03.06.40
di nulla... :)
cmq se non sei una ragazza, niente baci, grazie.. :D :D

ekerazha
08-07-2002, 06.10.24
Altro paio di cose :D

1) Nella cosa dell'include, nell'array, vorrei che si facesse in modo che se apro la pagina principale (index.php) in essa venisse inclusa una certa pagina, anche se non ho specificato nessun parametro (nessun ID per capirci).

Mi spiego meglio:

se io apro index.php?ID=1 mi si include una certa pagina, se apro index.php?ID=2 mi include un altra pagina, vorrei fare in modo che se scrivi semplicemente "index.php", senza precisare l'ID, mi includesse una certa pagina.

Io ho provato a mettere nell'array
'"" => "paginachevoglio.php"

e sembra funzionare, volevo solo sapere se va bene così, o se ci possono essere problemi ed è meglio mettere qualcos'altro (oltre a "" ho visto che funzionano anche gli apici singoli '').

2) Vorrei anche inserire un "footer", cioè fare in modo che comparisse un percorso della pagina in cui mi trovo (ad esempio Home Page > Pagina 1 > Pagina 2 > Pagina 3), e che magari queste "Pagina 1" "Pagina 2" ecc. fossero anche link che rimandassero alla relativa pagina. hai idea di come si fa? Se è troppo lungo da spiegare e non hai voglia lascia perdere, giustamente sarebbe meglio che mi arrangiassi :D

Ciao e grazie 1000 della pazienza.

P8257 WebMaster
08-07-2002, 16.22.30
..scusate, tutto quello che è stato detto va più che bene ..

ma perché non tenente la parte html separata dal php?
Qeusto risolve molti, moltissimi problemi .. tra cui in primis i tuoi due quesiti propri del thread.

Bye :cool:

quipo.it
08-07-2002, 16.50.25
x ekerazha:
1) basta fare il controllo sulla variabile $ID:

if(!isset($_GET["ID"])
{
include("index.php");
} else {
// come prima
}


2) uno script per un sistema di navigazione così lo trovi su qualunque portale di php, prova qui: hotscripts (http://www.hotscripts.com/PHP/Scripts_and_Programs/)


x P8257 WebMaster:
Sì, sarebbe MOLTO meglio, ma se è alle prime armi è solo una complicazione in più...

ekerazha
08-07-2002, 21.23.19
Ho provato a mettere come controllo:


if(!isset($_GET["ID"]);
{
include("home.php");
} else {
include($myArray[$_GET["ID"]]);
}


ma non funziona... dove sbaglio? :confused:
Ancora grazie 1000.

quipo.it
08-07-2002, 22.22.05
non ne ho idea... mandami le due pagine, te le controllo...

ekerazha
08-07-2002, 23.09.46
Originariamente inviato da quipo.it
non ne ho idea... mandami le due pagine, te le controllo...

dammi la tua e-mail in pvt... e grazie ancora :)