Ecco a voi quello che ho fatto, dopo aver raccolto alcuni ottimi consigli:
connetti.php:
Codice PHP:
<?php
// parametri per la connessione al database
$nomehost = "localhost";
$nomeuser = "nomeuser";
$password = "password";
$nomedb = "nomedb";
//---connessione----------------------------------------------------
$conn = @mysql_connect($nomehost,$nomeuser,$password) or die (mysql_error());
$sel = @mysql_select_db($nomedb) or die (mysql_error());
?>
prenota.php:
Codice PHP:
<?php
//leggo il submit
if(isset($_POST['submit']) && $_POST['submit']=="Prenota"){
//usa il include_once oppure require_once
include_once "connessione.php";
//leggo i valori
/*per il post nome devi mettere alcuni controlli, può essere
pericoloso inserire direttamente nel db, come minimo un adslashes
che ti serve per i nomi del tipo "D'Alba"
poi quando lo leggerai metterai stripslashes*/
$nome=addslashes(trim($_POST['nome']));
//ti conviene verificare se è stato immesso nome vuoto
if($nome==""){
echo "Ti sei dimenticato di scrivere il nome";
//dopo 3 secondi ripulisco il tutto senza entrare nel db
echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}else{
//il nome non è vuoto leggo gli altri post
//proveniendo da un radio button selzionato di default l'isset non servirebbe
if(isset($_POST['pullman'])){$pullman=$_POST['pullman'];}
if(isset($_POST['pranzo'])){$pranzo=$_POST['pranzo'];}
$query="INSERT INTO prenotazioni(nome,pranzo,pullman) VALUES('$nome','$pullman','$pranzo')";
$result=mysql_query($query);
if($result){
echo "Prenotazione eseguita con successo";
}else{
echo "C'è stato un errore, riprova più tardi";
}//fine if-else salvataggio
//finito il tutto ritorno al form, se ad altra pagina metti al posto di.htm....PHP_SELF']).
//il nome della pagina a cui vuoi che l'utente sia riinviato
echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}//fine if-else nome
}//fine if submit
?>
<h1>Prenotazione:</h1>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="post">
Nome e Cognome:
<input name="nome" type="text">
Pullman:
Sì<input type="radio" name="pullman" value="sì" />
No<input type="radio" name="pullman" value="no" checked="checked" />
Pranzo:
Sì<input type="radio" name="pranzo" value="sì" />
No<input type="radio" name="pranzo" value="no" checked="checked" />
<input name="submit" type="submit" value="Prenota">
<input type="reset" name="Submit" value="Reset">
</form>
Ora il problema è che si connette al DB...solo che quando provo a schiacciare il bottone "Scrivi" mi dice il messaggio "c'è stato un errore, riprova più tardi", che niente non è!
Poi, dopo 2 o 3 volte che ho provato la form, sono andato a vedere il db con phpmyadmin, e ho notato che un record me l'ha inserito...poi però ho riprovato con un altro inserimento (con valori diversi), ma non mi inserisce più niente!
Ah, una cosa...pensate che sia un problema tra php4 e php5? perchè volendo potrei cambiare le impostazioni e mettere a on il supporto a php5!
Grazie mille a tutti quelli che vorranno darmi una mano...so che siamo vicini alla soluzione!!