- Home
- Categorie
- Coding e Sistemistica
- Coding
- Inclusioni ( non capisco cosa sbaglio)
-
Inclusioni ( non capisco cosa sbaglio)
Niente , cercato fra i topic , thred etc....
Non capisco come uscirne ( tenete conto che in php sono davvero un novellino)
Sto' cercando di costruire il mio sito personale ( soprattutto per imparare)
Ho una index che include il top e il menu sinistro , mentre il centro e' gia' compreso .
Nessun problema quando nel top clicco i vari pulsanti che catturano le include e le mettono al posto del centro
Ma il mio problema e' questo :
di default nella index mi appare questa fraseNotice: Undefined index: pag in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 36
Cosa sbaglio????
vi posto la sezione php della mia index<?php
$pagina=$_GET['pag'];
if ($pagina=="contatti"){
require('contatti.htm');
}
else if($pagina=="disobliqua"){
require('disobliqua.htm');
}
else if($pagina=="guitar"){
require('guitar.htm');
}
else if($pagina=="web"){
require('web.htm');
}
else if($pagina=="a101"){
require('a101.htm');
}?>
Ovviamente nei pulsanti c'e' questo script
<a href="index.php?pag=contatti">
Non ne vengo fuori e ho troppo poche conoscenze per capire l'errore , vi prego aiutatemi ve ne saro' debitore
-
ma secondo me hai un problema cn il tuo server, il codice e' corretto, forse hai le variabili globali su off!!
Cio' che ti posso dire e' non cercare la soluzione nel codice di quanto hai scritto perche' funziona perfettamnte!
-
Veramente non è un errore ma un avvertimento.
Non hai dichiarato una variabile che hai usato. In particolare si riferisce a
$_GET['pag'];<?php
$pagina=$_GET['pag']; <- questo genera il noticepuoi ovviare mettendo un
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else {#vedi te cosa fare nela caso non passi il get; }
ps perché tutti quegl'if?
prova ad usare switch:
<?php if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else {#vedi te cosa fare nela caso non passi il get; } switch ($pagina) { case "contatti": default: require('contatti.htm'); break; case "guitar": require('guitar.htm'); break; //e così via } ?>
occhio... codice fatto al volo. Spero di non aver scritto infamità
-
Grazie per la cordialita' , adesso provo un po' a fare come mi avete detto .
Solo una domanda : ho scoperto che altri utenti hanno avuto problemi con easy php ( che uso anch'io).Avete da consigliarmi un 'alternativa ( tenendo conto che rispetto a voi sono un principiante ) quindi possibilmente una piattaforma non incasinata .......
Ribadisco il grazie , veramente.
-
-
Ok , ho provato ad inserire il codice di massi ma mi da quasto errore :
Parse error: parse error in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 61
Caspita la linea 61 e' l'utima , quella che chiude l'html.......aiuto
Io vi posto la mia index , che per voi e' una banalita' e vi specifico che nei pulsanti c'e' questo codice : <a href="index.php?pag=guitar"> etc....
ecco la index
anzi ....a dispetto dello spam vi lascio la mia email : [email][email protected][/email]
mi fareste un ENORME FAVORE , IMMENSO .<html>
<head>
<title>sito andrea</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel=stylesheet href="stile.css" type="text/css"></head>
<body bgcolor="black">
<script language="JavaScript">
if (navigator.appName == "Microsoft Internet Explorer"){
document.write('<BGSOUND SRC="m.mp3" LOOP=INFINITE>')}
else {
document.write('<EMBED src="m.mp3" WIDTH="0" HEIGHT="0" AUTOSTART="true" LOOP="false">')}
</script><table width="80%" border="0" align="center" valign="top" cellpadding="0" cellspacing="0">
<tr align="center" valign="top">
<td valign="top"colspan="2">
<span class="landrea2">
<? include("toppage.htm"); ?>
</span>
</td>
</tr>
<tr>
<td class="landrea">
<? include("sinistra.htm"); ?></td> <td width="573" height="400"background="images/centrale.jpg"> <?php if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else {#vedi te cosa fare nela caso non passi il get; } $pagina=$_GET['pag']; if ($pagina=="contatti"){ require('contatti.htm'); } else if($pagina=="disobliqua"){ require('disobliqua.htm'); } else if($pagina=="guitar"){ require('guitar.htm'); } else if($pagina=="web"){ require('web.htm'); } else if($pagina=="a101"){ require('a101.htm'); } ?> </td>
</tr>
</table></p>
</body>
</html>
-
Io messo quel codice di Massy ( isset..etc) senza sapere a cosa serve e cos'e' .
Questo solo per farvi capire a che livello sono
-
Una volta capito che isset serve a fare una verifica mi chiedo perche' mi da
Notice: Undefined variable: pagina in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 46
Notice: Undefined variable: pagina in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 49
Notice: Undefined variable: pagina in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 52
Notice: Undefined variable: pagina in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 55
Notice: Undefined variable: pagina in c:\programmi\easyphp1-8\www\sito andrea\index.php on line 58
cioe' ogni volta che c'e' la var pagina .
-
sempre premesso che nn sono un esperto, il tuo errore cmq e':
tu scrivi
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];}
che equivale a controllare se esiste una variabile $_GET['pag'] e poi cmq fuori da questo if fai altre operazioni dando per scontato che esista, invece devi fare un controllo del tipo<?php
if (isset ($_GET['pag'])) {
$pagina=$_GET['pag'];if ($pagina=="contatti"){
require('contatti.htm');
}
else if($pagina=="disobliqua"){
require('disobliqua.htm');
}
else if($pagina=="guitar"){
require('guitar.htm');
}
else if($pagina=="web"){
require('web.htm');
}
else if($pagina=="a101"){
require('a101.htm');
}
} //chiudi if principale dove controllavi se esisteva $_GET['pag'], se nn esiste passi all'else!else {echo "la variabile GET nn e' passata"; }
?>
-
Va bhè... inserire codice senza sapere a cosa serva non è un buon modo per capire.
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else {#vedi te cosa fare nela caso non passi il get; } <--- intendevo: vedi cosa fare se non passi via get qualcosa...
ad esempio, potresti fare in modo che se non passi nessun parametro ti richiami home.htm...
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else { $pagina="home.htm";}
oppure stampa un errore :
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else { die ("Errore"); }
o quello che ti pare.
-
Las tringa postata
if (isset ($_GET['pag'])) {$pagina=$_GET['pag'];} else { die ("Errore"); }
funziona perfettamenteci sara' un modo a questo punto per dirgli NON FARE NIENTE cioe' rimani
cosi' o qualcosa del genere .ps: comunque non e' che io metto stringhe cosi a caso senza chiedermi cosa fanno , ovviamente col vostro aiuto poi mi cerco in rete il nome dei comandi
e cerco di comprenderli .Ma vorrei sottolineare che l'aiuto di gente che ne sa e' infinitamente piu' grande di qualsiasi altra cosa .
Quando insegno chitarra mi fa piacere vedere che le mie "dritte" aiutano gli altri , spero sia cosi anche per voi con il php