- Home
- Categorie
- Coding e Sistemistica
- PHP
- Chiedo aiuto per il seguente errore
-
Chiedo aiuto per il seguente errore
Strict Standards: Only variables should be passed by reference in C:\AppServ\www\ogmpdf\categoria.php on line **55
a seguito scrivo il listato che produce questo errore:
<?
include "login.inc.php";
$categoria = new cCategoria($db);//Esegue le modifiche sul db
$errore="";
if (isset($_REQUEST['esegui']))
if ($_REQUEST['esegui'] == 'Inserisci') $errore=$categoria->inserisci($_POST);
elseif ($_REQUEST['esegui'] == 'Modifica') $errore=$categoria->modifica($_POST);
elseif ($_REQUEST['esegui'] == 'Cancella') $errore=$categoria->cancella($_GET);//Visualizza la testa della pagina
$titolo="Categorie";
include "navigatore.inc.php";
?>
<p><div align="center"><font class="FacetFormHeaderFont"><?=$titolo?></font></div></p>
<div align="center"><form method=post action="<?=$_SERVER['PHP_SELF']?>">
<table order="0" cellpadding="3" cellspacing="1" class="FacetFormTABLE" align="center">
<?
if ($errore) echo "<tr><td colspan="2" class="FacetDataTD">".$errore."</td></tr>\n";//Inizializza i campi del form
$nome = $sottocategoria_di = "";
$esegui = "Inserisci";
if (isset($_GET['azione']) && $_GET['azione']=='Modifica')
{ //Carica i parametri per la modifica di una categoria
$nome = $_GET['nome'];
$sottocategoria_di = $_GET['sottocategoria_di'];
$esegui = "Modifica";
echo "<input type="hidden" name="ID" value="".$_GET['ID']."">";
}
if ($errore && $_POST['esegui']!='Cancella')
{ //Recupera i parametri gia' impostati in seguito ad un errore
$nome = $_POST['nome'];
$sottocategoria_di = $_POST['sottocategoria_di'];
$esegui = $_POST['esegui'];
if ($_POST['esegui']=='Modifica') echo "<input type="hidden" name="ID" value="".$_POST['ID']."">";
}//Visualizza i campi del form
?>
<tr><td class="FacetFieldCaptionTD">Nome della categoria</td>
<td class="FacetDataTD"><input type="text" name="nome" value="<?=$nome?>"></td></tr>
<tr><td class="FacetFieldCaptionTD">Sottocategoria di</td>
<td class="FacetDataTD">
<?$categoria->listBox('sottocategoria_di',$sottocategoria_di,false,true);?>
</td></tr>
<tr><td colspan="2" align="right" nowrap class="FacetFooterTD"><input type="submit" name="esegui" value="<?=$esegui?>"></td></tr>
</table></form></div><br>
<table border=0 align='center'>
<?//Visualizza l'albero delle categorie
$nCategorie = $categoria->elenco($elencoCategorie, $dummy=0);
for ($i=0; $i<$nCategorie; $i++)
{
echo "<tr>";
for ($j=0; $j<$elencoCategorie*['livello']; $j++) echo "<td> -------> </td>"; // Indentazione di livello
switch ($elencoCategorie*['livello'])
{
case 0: $bgColor='bgcolor=#C4C4C4'; break;
case 1: $bgColor='bgcolor=#CCCCCC'; break;
case 2: $bgColor='bgcolor=#D6D6D6'; break;
case 3: $bgColor='bgcolor=#DDDDDD'; break;
case 4: $bgColor='bgcolor=#E8E8E8'; break;
case 5: $bgColor='bgcolor=#EEEEEE'; break;
default: $bgColor="";
}
echo "\n<td $bgColor><a href="?ID=".$elencoCategorie*["ID"]."&nome=".$elencoCategorie*["nome"]."&sottocategoria_di=".$elencoCategorie*["sottocategoria_di"]."&azione=Modifica">".$elencoCategorie*["nome"]."</a></td>\n";
echo "<td><a href="?ID=".$elencoCategorie*["ID"]."&esegui=Cancella"><img src="images/x.gif" alt="Cancella" border="0"></a></td></tr>\n";
}
echo "</table>\n";
?>
</body>
</html>la riga segnata in rosso e quella che produce l'errore
sperando nel vs gentile aiuto vi saluto tutti
**
-
Ciao paolomi,
dovresti postarci il metodo elenco, anche se l'errore mi sembra abbastanza chiaro stai cercando di passare in maniera errata un riferimento al metodo elenco.