Problema con mysqli

Simone Amidei

Nuovo Utente
16 Dic 2014
1
0
0
Salve. Ho scritto in parallelo due pagine php che entrambe ricevono dei dati provenienti da un form per poi inserirli nel database locale. Il problema è che nel primo caso funziona tutto mentre nel secondo caso non viene effettuata la query!

Primo caso:
PHP:
<?php
$nome=$_POST['nome'];
$cognome=$_POST['cognome'];

$host="localhost";
$user="root";
$password="";
$database="db_prova";
$tabella="tab_prova";

$connessione = mysqli_connect($host,$user,$password,$database);
if(!$connessione)
{
	echo "Errore! Connessione non disponibile. <a href='18_tabella.php'>Riprova tra qualche minuto</a>";
}
$query = "insert into $tabella (id, nome, cognome) values (null, '$nome', '$cognome')";
echo $query;
if(!mysqli_query($connessione,$query))
{
	echo "valore non inserito";
}
else
{
	echo "valore inserito";
}
mysqli_close($connessione);
?>
Secondo caso:
PHP:
<?php
// Recupero i dati inseriti dall'utente nel form
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$luogo = $_POST['dove'];
$data = $_POST['quando'];
$sesso = $_POST['sesso'];
$via = $_POST['via'];
$numero = $_POST['numero'];
$cap = $_POST['cap'];
$citta = $_POST['citta'];
$provincia = $_POST['provincia'];
// Inizializzo tutte le variabili per effettuare la connessione al database
$host = "localhost";
$user = "root";
$password = "";
$database = "db_inserimento";
$tabella = "tab_persone";
// Effettuo la connessione al database inserendo host, user, password e database
$connessione = mysqli_connect($host,$user,$password,$database);
// Se la connessione non è andata a buon fine mostro un messaggio di errore
if(!$connessione)
{
	echo "Errore! Connessione non disponibile. <a href='18_tabella.php'>Riprova tra qualche minuto</a>";
}
// Altrimenti
else
{
	$query = "insert into $tabella (id, nome, cognome, luogo, data, sesso, via, numero, cap, città, provincia) values (null, '$nome', '$cognome', '$luogo', '$data', '$sesso', '$via', '$numero', '$cap', '$citta', '$provincia')";
	echo $query;
	if(!mysqli_query($connessione,$query))
	{
		echo "<br/>dati non inseriti";
	}
	else
	{
		echo "<br/>dati inseriti";
	}
}
mysqli_close($connessione);
?>
Potete aiutarmi? A me sembrano identici :confused:
 
Ultima modifica di un moderatore:
Ma ti da anche errori ? se è si scrivili/o.
Altra cosa controlla attentamente tutta la sintassi del codice ad esempio i nomi delle tab. ... perchè visto così non dovrebbero esserci errori
 
Non sono identici ma hanno una logica differente se noti bene, il secondo dopo la connessione al database, verifica che questa sia avvenuta, se non lo è stampa un'informazione per l'utente, se avvenuta prosegui nello script.
Nel primo fai quasi la stessa cosa, cioè non dici else { query... ma dai per scontato che la connessione sia avvenuta.
Poi... se non ci dai info sull'errore sarà dura darti indicazioni.
 

Discussioni simili