Ciao a tutti, ho già cercato nel forum e su internet ma non riesco a trovare la soluzione al mio problema.
Non riesco ad inserire i dati in una tabella tramite form con variabili $_POST.
Ho fatto tutte le prove possibili (che conosco) e l'unica cosa che mi risulta è che non funzioni il comando INSERT INTO. Se tento di fare INSERT tramite phpmyadmin tutto funziona, da form html no. HELP!
Non riesco ad inserire i dati in una tabella tramite form con variabili $_POST.
PHP:
<form action="index.php?sezione=privata" method="post">
<fieldset>
<legend>Registrazione:</legend>
<label for="nomecognome">Nome e Cognome:</label><br />
<input id="nomecognome" name="nomecognome" type="text" /><br />
<label for="Email">E-Mail:</label><br />
<input id="email" name="email" type="text" /><br />
<label for="Username">Nome Utente:</label><br />
<input id="username" name="username" type="text" /><br />
<label for="Password">Password:</label><br />
<input id="password" name="password" /><br />
<input name="registrazione" type="submit" value="Submit" />
</form>
</fieldset>
<?php
//controllo sui dati inviati
if ($_POST['registrazione'] == "Submit") {
$namesurname = trim(filter_var($_POST['nomecognome'], FILTER_SANITIZE_STRING));
$email= trim(filter_var($_POST['email'], FILTER_SANITIZE_EMAIL));
$username = trim(filter_var($_POST['username'], FILTER_SANITIZE_STRING));
$password = trim(filter_var($_POST['password'], FILTER_SANITIZE_STRING));
//connessione al database
define ("MYSQLUSER", "user");
define ("MYSQLPASS", "password");
define ("HOSTNAME", "localhost");
define ("MYSQLDB", "database");
//controllo di connessione con database
/*if ($result = $connection->query("SHOW TABLES")) {
$count = $result->num_rows;
echo "Tables: ($count)<br />";
while ($row = $result->fetch_array()) {
echo $row[0]. '<br />';
}
}*/
$connection = new mysqli(HOSTNAME,MYSQLUSER,MYSQLPASS,MYSQLDB);
if ($connection->connect_error) {
die('Errore di connessione: '. $connection->connect_error);
} else {
echo 'Connessione riuscita <br />';
//preparaazione query
$query = "INSERT INTO `utenti` (id_utente, nome, email, username, password) VALUES (NULL, `$namesurname`, `$email`, `$username`, `$password`);";
//lancio la query con i messaggi
if (!$result = $connection->query($query)) {
echo "Impossibile aggiungere i record <br />";
var_dump($query);
} else {
echo "Records aggiunti correttamente <br />";
var_dump($query);
}
}
}
?>
Ho fatto tutte le prove possibili (che conosco) e l'unica cosa che mi risulta è che non funzioni il comando INSERT INTO. Se tento di fare INSERT tramite phpmyadmin tutto funziona, da form html no. HELP!