Problema con una variabile

  • Creatore Discussione Creatore Discussione Dante90
  • Data di inizio Data di inizio

Dante90

Nuovo Utente
11 Feb 2011
4
0
0
Premetto che è da pochissimo che ho iniziato a studiare programmazione e molte cose ancora non le capisco ^^'
Detto questo vi espongo il mio problema.
Ho realizzato una prova per un sito in cui ho posto dei link mi mandavano in echo diversi contenuti, e quando l'ho provato con xxamp tutto è andato liscio.
Ora creando il vero sito ho riscritto le stesse righe di codice facendo gli stessi esatti passaggi ma ora quando carico il sito mi da errore:
Notice: Undefined variable: uno in C:\xampp\htdocs\sitoesame\sito_esame.php on line 14
la linea 14 è questa:
if(!$_GET){
$page=$uno; <-----linea 14

il codice è questo:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Portfolio</title>
<link href="css/fogliodistile.css" rel="stylesheet" type="text/css" />
</head>

<body>


<?php

if(!$_GET){
$page=$uno; <-----linea in questione
}
else {

$page= $_GET['l'];
}

$uno="<a href='img/logo definitivo.jpg'><img src='img/logo definitivo.jpg' height='50' width='70'></a> <a href='img/logo.JPG'><img src='img/logo.JPG' height='50' width='70'></a> <a href='img/logo1.png'><img src='img/logo1.png' height='50' width='70'></a> <a href='img/sidebar.png'><img src='img/sidebar.png' height='60' width='40'></a>";

$due="testo da inserire";
$tre="testo da inserie";
?>

<table width="868" border="0" cellpadding="0" cellspacing="0" class="contenitore">
<tr>
<td valign="top" align="left" class="header"></td>
</tr>
<tr>
<td valign="top" align="left" class="menu">
<table class="contenitore">
<tr >
<td height="4" colspan="7">
</td>
</tr>
<tr class="sfondo">
<td valign="top" align="left" >
<?php
if ($page=="uno"){
echo $uno;
} else if ($page=="due"){
echo $due;
} else if ($page=="tre"){
echo $tre;
}




?>
</td>
</tr>
<tr>
<td class="fontdim"> <a href="index.php?l=uno">home</a><br/>
<a href="index.php?l=due">chi siamo</a><br/>
<a href="index.php?l=tre">gallery</a><br/></td>
</tr>
</table>

</td>
</tr>

<tr>
<td valign="top" align="left" class="footer"></td>
</tr>
</table>

</body>
</html>


com'è possibile che vada nel primo e non nell'altro?
ho forse dimenticato qualcosa?
Grazie in anticipo per l'aiuto!
 
hai scritto:
PHP:
if(!$_GET){
$page=$uno;
ciò significa che se GET non è stato utilizzato allora $page è uguale a $uno, solo che nel codice non hai indicato quale sia il valore di $uno se non dopo la riga 14.
 
Grazie anche a te,ora non mi dà più l'errore della variabile però i link non rispondono ancora...sapete come fare per sistemare anche questo problema? grazie della disponibilità!
 
$uno deve essere definito prima di:
PHP:
$page=$uno;
altrimenti non potrai effettuare l'assegnazione del valore.
 
Quello l'avevo segnato,comunque grazie mille a tutti ora son riuscito a sistemare
alla prossima!:ilpirata:
 
Non si tratta di impostazioni stupide, il delimitatore "<?" è deprecato in PHP e non deve essere utilizzato.
 
dimenticavo, volevo aggiungere
PHP:
<?php
echo 333/$div;

?>
questo stupidissimo codice
da in out

Warning: Division by zero in C:\AppServ\www\inizializza.php on line 2
p.s.
vorrei fare una "sottile" distinzione tra dichiarare una variabile e inizializzarla
se scrivo

$pinco=array();
in pratica dichiaro che pinco è un array, in php può avere poca importanza, ma in altri linguaggi si (se dichiaro una variabile di tipo stringa non posso usarla come valore numerico)

se invece scrivo

$pallino = 3.14;
inizializzo la variabile assegnandoli il valore di PI greco
 

Discussioni simili