diff tra v.5.0 e 5.2 di php

  • Creatore Discussione Creatore Discussione viro57
  • Data di inizio Data di inizio

viro57

Nuovo Utente
19 Set 2008
2
0
0
Salve,

ho uno script php quì sotto ne vedete una parte (quella che non funziona)
funzionava con la versione 5.0.5 ho installato la 5.2.4 e non funziona più :)

Cosa fa :

visualizza le lettere del'alfabeto
cliccando su una lettera valorizzava (ora non, piu') la variabile $pattern.
Questa variabile la uso poi per estrarre dati da un database mysql.


Grazie

Roberto

<html>
<head>
</head>
<body topmargin=16 marginheight=16>
<?
echo "<table width='300' border='0' cellspacing='2' cellpadding='2' align='center'>";
echo "<tr>";
$a = 65;
while($a < (65+26))
{
?><td class=sort-td nowrap align="center" valign='middle'><?
if($pattern != chr($a)) {
print "<a href='$PHP_SELF?action=show&pattern=".chr($a)."' class='sort'>".chr($a)."</a>";
} else {
print "<span class='td-sorted'>".chr($a)."</span>";
}
$a++;
?></td><?
if ($a==78) print "</td></tr><tr>";
}
echo "<br>";
echo "</tr>";
?>
</table>
<?
// quì c'è la parte diinterrogazioen del database che ho sostituito
// con una "echo"
echo "-------------------------> $pattern";
?>
</html>
 
Direi che il problema non risiede nelle differenze tra PHP 5.0 e 5.2, ma nel file di configurazione php.ini. Probabilmente nella vecchia versione avevi impostata la direttiva register_globals = On, che ti permetteva di accedere direttamente alle variabili passate tramite GET o POST.
Con la direttiva impostata su Off, bisogna accedere in questo modo:

$_GET['nomevariabile'] oppure $_POST['nomevariabile']

Nel tuo caso:
$pattern -> $_GET['pattern']
 

Discussioni simili