Originariamente inviato da zakros
Diciamo dal PHP 4.1 ma dipende dal fatto che sia settata o meno la register_globals guarda sta pillola http://forum.html.it/forum/showthrea...hreadid=245215 (anche questa un po datata)

Cmq ho visto che ci sono un po di variabili che arrivano dal form io farei cosi, per nn stravolgere lo script, cosi rimangono le variabili originali


Codice PHP:
<? 
$pass
=$_POST['pass'];
$titolo$_POST['titolo']; 

e tutte le altre variabilidata mese giorni ecc..

include(
"top_foot.inc.php"); 
include(
"config.inc.php"); 
top(); 
if (
$pass != $password/*controllo della password*/ 

    echo 
"Password errata"


/*grazie alla funzione TRIM togliamo gli spazi vuoti dalla stringa ricevuta , quindi riconosciamo e non accettiamo stringhe composte da soli spazi e senza contenuto informativo*/ 
elseif (trim($titolo) == "" OR trim($testo) == ""

echo 
"I campi Titolo e Testo devono essere riempiti!"


/*mettiamo in escape eventuali caratteri speciali contenuti nelle stringhe*/ 
else 
    { 
$titolo addslashes(stripslashes($titolo)); 
$autore addslashes(stripslashes($autore)); 
$mail addslashes(stripslashes($mail)); 
$testo addslashes(stripslashes($testo)); 


/*la codifica HTML potrebbe crearci problemi in fase di visualizzazione con alcuni caratteri,sostituiamoli con la loro corrispondente codifica HTML ; qui ci occupiamo del carattere < e > , le parentesi acute*/ 
$titolo str_replace("<""&lt;"$titolo); 
$titolo str_replace(">""&gt;"$titolo); 
$autore str_replace("<""&lt;"$autore); 
$autore str_replace(">""&gt;"$autore); 
$testo str_replace("<""&lt;"$testo); 
$testo str_replace(">""&gt;"$testo); 
$testo nl2br($testo); 

/*con la funzione mktime convertiamo data in formato TIMESTAMP*/ 
$data mktime("0""0""0"$mese$giorno$anno); 

/*connessione al db*/ 
$db mysql_connect($db_host$db_user$db_password); 
if (
$db == FALSE
die (
"Errore nella connessione. Verificare i parametri nel file config.inc.php"); 
mysql_select_db($db_name$db
or die (
"Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); 

$query1 "INSERT INTO news (titolo, testo, data, nome) VALUES ('$titolo', '$testo', '$data', '$autore')"
$query2 "INSERT IGNORE INTO autori (nome, mail) VALUES ('$autore', '$mail')"

if (
mysql_query($query1$db) AND mysql_query($query2$db)) { 
  echo 
"L'articolo è stato inserito correttamente"
  } 
else { 
  echo 
"Erorre durante l'inserimento $query"


foot(); 
?>
grazie , anche per l'ennesimo buon consiglio sulle variabili
ma quindi , per le prossime volte , come ho postato il codice andava bene , cioé va bene per il parser di PHP 4 o 5 ?

ti chiedo anche un'altra cosa visto che oramai abbiamo scritto due pagine di post ... sto leggendo un libro sul PHP 4 ma a volte mi capita di usare anche PHP 5 come software : secondo te dovrei prendere alcuni accorgimenti ?