Nei prossimi giorni procederemo con l'impostazione della direttiva register_globals su "off" su tutte le macchine al fine di garantire un più elevato grado di sicurezza per gli applicativi eseguiti nel proprio spazio web.
Riteniamo che tale modifica non influirà sul funzionamento della maggior parte degli scripts attualmente online, dal momento che tale impostazione è stata disabilitata per default a partire dal php 4.2.0 (Aprile 2002), ricordiamo tuttavia che è sufficiente nella maggior parte dei casi aggiungere all'inizio del proprio codice:
import_request_variables('gpc');
extract($_SERVER);
==========================================
Per gli scripts che utilizzano sessioni php, qualora si presentassero malfunzionamenti, è sufficiente aggiungere subito dopo session_start() l'istruzione:
extract($_SESSION);
==========================================
Per gli scripts che eseguono il caricamento di files è necessario accertarsi di utilizzare l'array $_FILES, segue un esempio di script per l'upload corretto:
Codice:
<?php
$uploaddir = '/membri/mionickname/mia_cartella_upload/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File caricato.\n";
} else {
echo "Errore\n";
}
?>
Con il relativo form html che sarà:
Codice:
<form enctype="multipart/form-data" action="url_del_tuo_script_di_upload" method="POST">
Inviami un file: <input name="userfile" type="file">
<input type="submit" value="Send File">
</form>
==========================================
Ricordiamo che tali modifiche devono essere fatte solo nel caso in cui si verifichino dei problemi di funzionamento con i propri scripts
In caso di problemi invitiamo comunque a postare nella sezione dedicata al php: http://forum.altervista.org/forumdisplay.php?f=17