Problema con ciclo If..

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
a parte gli scherzi sei riuscito a farlo funziare?
eventualmente per provare, fatti una pagina php
PHP:
<?php
$pagine = glob("$main/*.html");
foreach($pagine as $valore){
    echo "$valore<br>";
}
$pagine =str_replace(".html","",$pagine);
 foreach($pagine as $valore){
    echo "$valore<br>";
}
?>
il primo dovrebbe darti:
pinco.html
pallino.html
.....
il secondo
pinco
pallino
........

poi
stai attento alle maiscole/mnuscole, come saprai php è casesensitive
non usare gli shorttag <? ma <?php
usa la sintassi canonica con l'if/else if(...){....}else{....}
inoltre dove è il get dell'id?

p.s.
io preferivo il sinclair
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Se ho capito bene il progetto di Winter_Soldier il valore di id arriva per querystring, quindi dovremmo avere

PHP:
<?php
$id = trim(htmlentities($_GET['id'],ENT_QUOTES));
$pagine = glob("$main/*.html");  
$pagine =str_replace(".html","",$pagine);  
if (in_array($id, $pagine)) {   
    include $id.".html";   
}          
else 
include ("homepage.html"); 
?>

Queste inclusioni dinamiche sono un pò rischiose, ma funzionare funziona.

Adesso vado a comprare uno Spectrum ZX per Borgo e glielo mando a Natale
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
io farei così
PHP:
<?php
if(isset(htmlspecialchars($_GET['id'])){
	$pg=htmlspecialchars($_GET['id']);
	$pagine = glob("*.html");
	$pagine =str_replace(".html","",$pagine); 
	if (in_array(trim($id), $pagine)) {  
    	include_once "$id.html";  
	}else{
		include_once"homepage.html";
	}
	include_once"homepage.html";
}
//poi i vari link
echo "<a href=\"main.php?id=pinco\">pinco</a>";
echo "<a href=\"main.php?id=pallino\">pallino</a>";
//ecc.....
?>
oppure ancora meglio
PHP:
<?php
//definisco le variabili altrimenti alex mi riprende, ma non servirebbe
$pagine=array();
$nome_pag=array();
if(isset($_GET['id']){
	$da_chiamare=htmlspecialchars($_GET['id']);
	include_once $da_chiamare; 
}else{
	include_once"homepage.html";
}
$pagine = glob("*.html");
$nome_pag=str_replace(".html","",$pagine);
$quante_sono=count($pagine)-1;//meno 1 perche si parte da 0
for($k=0, $k<=$quante_sono, $k++){
	echo "<a href=\"main.php?id=".$pagine[$k]."\">".$nome_pag[$k]."</a><br>";
}
?>
nella seconda maniera sfrutti di più le capacita di php senza preuccuparti di dover scrivere i nomi delle pagine.

unica accortezza e denominare le pagine con nomi consoni.
e se per caso la pagina/e ha un nome composto es chi_siamo.html prima dei link metti l'istruzione
PHP:
$nome_pag[$k]=str_replace("_", " ",$nome_pag[$k]);
nel primo sarebbe opportuno, prima dell'include mettere
PHP:
//.....
	if(file_exists("$id.html"){
		include_once "$id.html"; 
	}else{
		include_once"homepage.html";
	}
//.....
questo perche se la pagina si chiama sempronio.html e tu hai scritto id=semprinio ti restituisce un errore sull'include, errore da evitare

p.s.
immagino cge tu queste cose le sappia, ma ho scritto perche può servire anche a qualcunaltro
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
non avevo Spectrum ZX, ma Sinclair QL con la stupefacente ram 128 kb e rom 64 kb con cartucce estraibili, il tutto per l'esorbitante prezzo di 500.000 lire (che non corrispodono a 250 euri)


...era il lontano 1981...

dimenticavo ram espandibile a 640 kb (tra poco quasi un M)
http://it.wikipedia.org/wiki/Sinclair_QL
 
Ultima modifica:

Winter_Soldier

Nuovo Utente
27 Set 2010
14
0
0
Grazie ragazzi funziona tutto alla grande... L'unica cosa è che dovrò mettere tutto in un unica cartella ma non fa nulla... :p Mentre che ci siamo invece qualcuno sa dirmi come potrei mettere una musica di sottofondo che non si ricarica al momento del cambio della pagina nell'include? Senza iFrame possibilmente...
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Grazie ragazzi funziona tutto alla grande... L'unica cosa è che dovrò mettere tutto in un unica cartella ma non fa nulla... :p Mentre che ci siamo invece qualcuno sa dirmi come potrei mettere una musica di sottofondo che non si ricarica al momento del cambio della pagina nell'include? Senza iFrame possibilmente...

Posta questa richiesta nella sezione HTML, evitiamo di andare OT:)
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
A questo punto direi di aggiungere anche il controllo sulle maiuscole come suggerito da Borgo:
PHP:
$da_chiamare=strtolower(htmlspecialchars($_GET['id']));
 

Winter_Soldier

Nuovo Utente
27 Set 2010
14
0
0
Controllo sulle maiuscole sarebbe? Ah ma a proposito di caratteri... Nonostante abbia messo la codifica caratteri su UTF-8 devo impostare manualmente caratteri del tipo è in &egrave; .... Consigli?
 
Discussioni simili
Autore Titolo Forum Risposte Data
Monital Problema con un ciclo for. PHP 1
M Problema con ciclo foreach per chiusura apertura div in base al numero di record in database PHP 1
K Problema con update di un database in un ciclo Classic ASP 1
O Problema con ciclo FOR PHP 1
M problema con ciclo foreach per estrarre dati da un database PHP 22
M Problema con ciclo for e while PHP 2
neo996sps PHP: problema con ciclo for PHP 1
M Problema ciclo while con mysql_fetch_assoc PHP 6
D problema con ciclo if else query PHP 3
P Problema con ciclo for PHP 3
D problema con il ciclo while PHP 2
M Problema con join e ciclo while PHP 0
P Problema Con Il Ciclo Di Un Menu' Flash 6
B [HELP] Problema con ciclo if PHP 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
N Problema con position absolute e overflow HTML e CSS 4
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
K [PHP] Problema con variabili concatenate. PHP 1
O problema con query PHP 4
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
M Problema con Try Catch PHP 0
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
G Problema con Get page PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 0
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0

Discussioni simili