-
No database selected
Ciao a tutti,
vi spiego il problema:
ho creato un form per contattarmi in html che invia le informazioni a una pagina php per i controlli... da qui i dati andrebbero poi inseriti in un database...
Ho attivato il database su altervista e creato la tabella con i campi che mi interessano...
Quando inserisco i dati nel form e premo invia però mi appare una pagina bianca con scritto "No database selected"
Nel file di configurazione il database l'ho inserito! Dov'è che sbaglio?:roll:
Questo è il file config.php
Codice PHP:
$host = "localhost";
$username = "user";
$password = "password";
$database = "my_db";
$db = mysql_connect($host, $user, $password) or die("Errore durante la connessione al database");
mysql_select_db("my_db") or die("Errore durante la selezione del database");
No so se l'errore è in questo file!!
Help me!!
-
Se non ci metti i tuoi dati, e' poco probabile che funzioni
Codice PHP:
$host = "localhost";
$username = "< il tuo nick name >"; // "chiccapede"
$password = ""; // puoi lasciare vuoto
$database = "my_< il tuo nick name >"; // "my_chiccapede"
$db = mysql_connect($host, $user, $password) or die("Errore durante la connessione al database");
mysql_select_db($database) or die("Errore durante la selezione del database");
-
Scusa, non mi sono spiegata... i miei dati li ho inseriti correttamente... Quello che ho postata era il config.php senza i miei dati, ma in realtà ci sono!!:wink:
-
Si, ma e' cambiata anche l'ultima riga, dove c'e' scritto "my_db" invece di usare il valore della variabile.
-
L'ho modificata come hai detto tu... ma non è cambiato niente!!
-
Allora il problema non e' li, ma nello script. Se noti, il messaggio di errore e' "Errore durante la selezione del database", mentre tu dici di ottenere "No database selected".
Da dove hai preso quello script? E' visibile online? link?
-
Questa è la pagina con la quale sto facendo le prove:
http://www.chiccapede.altervista.org/inviodati.html
Se premi invia appare no database selected!!
Cmq grazie per le risp!
-
ora bisogna sapere cosa c'e' dentro inviovocaboli.php... (ocio che non ci siano password, non vogliamo vederle)
-
questa è la pag inviovocaboli.php
Codice PHP:
$voc="";
$id="";
$voc=$_POST['voc']; // recupero il valore inserito nella 1^ input box
$id=$_POST['id'];// recupero il valore inserito nella 2^ input box
if (empty($voc)===false || empty($id)===false) //verifico che entrambi i campi non siano nulli
include "config.php"; // includo il file di connessione al Db
$sql="INSERT INTO vocaboli(voc,id) VALUES('$voc','$id')"; // preparo la query di inserimento record e quindi passo ad eseguirla
$query=@mysql_query($sql) or die (mysql_error());
echo "Inserimento effettuato con successo."; // mando in output un messaggio che mi conferma l'inserimento
-
mancano delle parentesi li dentro:
Codice PHP:
$voc = "";
$id = "";
$voc = $_POST['voc']; // recupero il valore inserito nella 1^ input box
$id = $_POST['id']; // recupero il valore inserito nella 2^ input box
if (empty($voc)===false || empty($id)===false) //verifico che entrambi i campi non siano nulli
{
include "config.php"; // includo il file di connessione al Db
$sql = "INSERT INTO vocaboli(voc,id) VALUES('$voc','$id')"; // preparo la query di inserimento record e quindi passo ad eseguirla
$query = @mysql_query($sql) or die (mysql_error());
echo "Inserimento effettuato con successo."; // mando in output un messaggio che mi conferma l'inserimento
}
non e' un gran codice comunque, dovresti fare un po di controlli sui valori in arrivo, e soprattutto usare mysql_real_escape_string() sui dati che inserisce nel database, per proteggere le tue tabelle da... valori indesiderati.
-
Grazie mille!! mi hai risolto il problema... erano le parentesi!! ora l'inserimento avviene con successo!!
Poi cercherò di aggiungere i controlli, magari con l'aiuto di qualke forum su internet!!
GRAZIE