Ho fatto un form di compilazione di alcuni dati, questi dati poi vengono passati in una seconda pagina di controllo e ne verifica alcuni aspetti sintattici e via dicendo. Ho fatto in modo, o almeno ci sto provando, di visualizzare prima i dati a schermo e dopo inviare effettivamente i dati SOLO tramite conferma su un link o un pulsante!
Vi invio parte del codice interessato:
Codice PHP:
// Pulsante per inviare i dati al db
$invia = '[url="invia.php"]INVIA[/url]';
print $invia;
if (isset($invia))
$sql = "INSERT INTO individuo
(nome, cognome, città, giorno, mese, anno, telefono, email, msg)
VALUES
('" . $_POST['nome'] . "',
'" . $_POST['cognome'] . "',
'" . $_POST['selezione_città'] . "',
'" . $_POST['selezione_giorno'] . "',
'" . $_POST['selezione_mese'] . "',
'" . $_POST['selezione_anno'] . "',
'" . $_POST['telefono'] . "',
'" . $_POST['email'] . "',
'" . $_POST['testo'] . "')";
$result = mysql_query($sql)
or die (mysql_error());
}
Dopo un pò mi sono accorto che è errato, lui invia direttamente i dati senza che io clicchi sul tasto INVIA. Ho capito dov'è la boiata (ovviamente come l'ho fatto io la variabile $invia è sempre piena ed invia sempre i dati, mentre inizialmente il mio ragionamento era "risulta piena solo se ci clicco sopra", dopo qualche giorno mi sono reso conto della boiata), ma comunque non so che alternativa valida posso usare. Qualcuno mi da una manina?