Ciao a tutti!
Sono nuovo del mondo del PHP e per cominciare ho letto la guida base al PHP nella sezione PHP di quesesto forum. Ora sto leggendo leggendo la Guida pratica Php/MySql.
Io per testare gli script ho installato nel mio pc (Windows XP):
Apache 2.0.55, PHP 5.1.2 e MySQL 5.0.19.
In pratica ho installato tutto il software più aggiornato disponibile.
Per gestire MySQL ho installato PhpMyAdmin che funziona alla meraviglia.
Ora ho un problema con la Guida pratica Php/MySql.
In pratica, la guida mi fa creare un file per inserire le news di nome insert.php con questo codice:
codice:
<?
include ("config.inc.php");
include ("top_foot.inc.php");
//intestazione
top();
?>
<form method=post action=save.php>
Titolo:
<input type=text size=40 name=titolo>
Data:
<select name=giorno>
<?
for ($i=1; $i<=31; $i++)
echo "<option value=$i>$i";
?>
</select>
<select name=mese>
<option value=1>Gennaio
<option value=2>Febbraio
<option value=3>Marzo
<option value=4>Aprile
<option value=5>Maggio
<option value=6>Giugno
<option value=7>Luglio
<option value=8>Agosto
<option value=9>Settembre
<option value=10>Ottobre
<option value=11>Novembre
<option value=12>Dicembre
</select>
<select name=anno>
<option value=2001>2001
<option value=2002>2002
<option value=2003>2003
<option value=2004>2004
<option value=2005>2005
</select>
Autore:
<input type=text size=40 name=autore>
E-mail:
<input type=text size=40 name=mail>
Testo:
<textarea cols=60 rows=40 name=testo></textarea>
Password:
<input type=password size=40 name=pass>
<input type=submit value=Invia> </form>
<?
// chiusura pagina
foot();
?>
Questo file fa elaborare i dati inseriti nei form al file save.php che ha questo codice:
codice:
<? include("top_foot.inc.php");
include("config.inc.php");
top();
if ($pass != $password):
echo "Password errata";
elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";
else:
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$testo = addslashes(stripslashes($testo));
$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$autore = str_replace("<", "<", $autore);
$autore = str_replace(">", ">", $autore);
$testo = str_replace("<", "<", $testo);
$testo = str_replace(">", ">", $testo);
$testo = nl2br($testo);
$data = mktime("0", "0", "0", $mese, $giorno, $anno);
$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");
$query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')";
if (mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Erorre durante l'inserimento";
mysql_close($db); endif;
foot();
?>
In pratica quando nella pagina insert.php inserisco i dati, mi chiede di mettere anche la password, che io ho già settato in precendenza nel file config.inc.php ma mi dice sempre che è errata, ho controllato maiuscole e minuscole, solo se nel file config.inc.php lascio vuote le virgolette della password e in insert.php non inserisco la password, va avanti, però mi dice che non ho compilato il form del testo e del titolo, ma in realtà ho compilato tutto.
Come posso risolvere questi problemi?
Ciao e Grazie in Anticipo
PS Abbiate pazienza con me, sono nuovo di questo linguaggio