Scusa Alessandro se sono insistente, ma non riesco a capire il perchè di un file fumetto.
Cioè, io stavo cercando di creare una cartella (fumetti) in cui inserire un fumetto e una immagine a questa pagina. Come faccio se in questa cartella inserisco 50 fumetti?
Per la decima volta, con il mio metodo non c'è pericolo per le XSS, in quanto per querystring si accetta solo una ristretta cerchia di parametri. Ma che avete contro di me in questa discussione?
Buonasera Alessandro, volevo chiederti come devo procedere con il tuo metodo.
Cioè, modifico la mia index e ci metto il codice che mi hai passato, ma poi come procedo per fare in modo che nella "cartellina fumetti" recupero il fumetto di superman e le foto ad esso correlate.
Inoltre se aumentano le "cartelline", chessò: libri, riviste etc.. devo modificare anche il codice nella index?
Per la decima volta, con il mio metodo non c'è pericolo per le XSS, in quanto per querystring si accetta solo una ristretta cerchia di parametri. Ma che avete contro di me in questa discussione?
Tieni conto che quando associ un valore a GET ad una variabile, permetti l'utilizzo di questa variabile nel contesto dell'applicazione, quindi per limitare possibili danni sarebbe megli validare tutto quello che passa per GET prima dell'associazione con la variabile.
orribile visu, ma questa volta son d'accordo con alex
non viene passatao un url e lo switch valuta il valore del get
quindi (almeno secondo me) se scrivo
$page=htmlspacialchars($GET['page']);
switch($page){
case:"pinco";
require_once "pagina1.php";
break;
//altri vari case
default:
exit;
break;
}
la variabile $page può contenere anche un js, ma lo swich cade nella parte default, il pericolo dovrebbe aversi se direttamente mettessi direttamente nel get l'url alla pagina
o sbaglio
Buongiorno,
scusate la mia insistenza ma qualcuno può indicarmi come inserire il codice che mi ha postato Alessandro?
La mia conoscenza del php è appena cominciata.
efisio, per ogni nuova sezione che crei dovrai aggiungere un case a index.php, quindi creare un file chiamato come la sezione e, prendendo come esempio il codice di fumetti.php, inserirci tutti i sottovalori possibili. Un esempio per la sezione libri. File index.php:
PHP:
<?php
$page = isset($_GET['page']) ? trim($_GET['page']) : 'centrale';
switch($page)
{
case 'centrale':
require_once('centrale.php');
break;
case 'fumetti':
require_once('fumetti.php');
break;
case 'libri':
require_once('libri.php');
break;
default:
require_once('error.php');
}
?>
L'URL è stato accorciato dal forum, in realtà l'indirizzo comprensivo di querystring è un altro. Guarda a cosa punta realmente l'URL del mio post (lo puoi leggere nella status bar del browser quando ci passi sopra col mouse).
Se il parametro passato contiene uno slash (es: fumetto/talefile.xyz) lo slash potrebbe essere la causa del problema.
Già il primo script postato dovrebbe funzionare, usando
Ho modificato laquerystring nel seguente modo: href="http://localhost:8889/simpatico/index.php?page=arte&arte=arte_astratta" ma continuo a non riuscire a vedere niente a video.
Ho anche provato la modifica di isset con urldecode, ma la cosa non è migliorata. Mi sembra di essere in un vicolo cieco dove l'unico cieco sono io. ma dove sbaglio
ciao
oggi la mia ca....a quotidiana, prova a mettere nella pag. index
page = isset($_GET['page']) ? trim($_GET['page']) :"centrale";
switch($page)
{
case "centrale" :
require_once("centrale.php");
break;
case "arte":
****require_once("arte.php?arte=arte_astratta");
break;
default:
require_once("error.php");
}
perchè con la querystringa che fai il get viene letto dalla pag. index, ma non viene trasmesso alla pag arte.php