prova a sostituire quei *** nella variablie $password con la password reale. Forse ti riesco ad aiutare meglio.
Ecco i miei consigli:
1) Sostituisci quel:
Codice PHP:
//Connessione al database
$connessione = mysql_connect($nomehost,$nomeuser,$password);
//Controllo Connessione
if($connessione == 0){echo "Connessione al database fallita";}
con
Codice PHP:
$connessione = mysql_connect($nomehost,$nomeuser,$password) or die();
//se preferisci mostrare gli errori che avvengono allora usa:
//$connessione = mysql_connect($nomehost,$nomeuser,$password) or die(mysql_error());
//io userei la forma che mostra l'errore ma non appena hai finito lo sviluppo toglierei
//mysql_error dappertutto. Se conti di fare modifiche in futuro lascialo.
Il motivo per cui non farei quello che hai fatto tu è molto semplice: se avvengono errori nella connect questi non vengono fermati e si ripercuotono dappertutto. Di solito non fanno danni ma l'esperienza mi insegna di provvedere prima che succeda qualcosa =).
Ecco come funziona: se mysql_connect va a buon fine allora prosegue, se fallisce esegue quello che sta dopo l'or e quindi esegue die. Die termina lo script. Tutto quello che c'è dopo non verrà eseguito. Quello che c'era prima del die viene eseguito e il risultato viene mostrato.
1 bis) Con la correzione non servirà più ma sappi che in pezzi di codice come:
Codice PHP:
if($connessione == 0){echo "Connessione al database fallita";}
sarebbe più corretto fare questo:
Codice PHP:
if($connessione === False) {
echo "Connessione al database fallita";
}
Motivo: mysql_connect in caso di fallimento restituisce False. Ciò che hai fatto tu funziona comunque perchè 0 in una condizione viene considerato come un False ma per maggiore sicurezza sarebbe da fare "=== False".
Non correre nell'errore di fare "==False" per questo motivo (=== controlla anche che sia il valore che il tipo corrispondano):
Codice PHP:
if (0 == False) {
echo "Vero | "
} else {
echo "Falso |"
}
if (0 === False) {
echo "Vero"
} else {
echo "Falso"
//Output: Vero | Falso
2) Ecco la soluzione per il problema dell'unico record che riesci a leggere. Devi andare a rileggere la documentazione dei php.net dove parla di mysql_fetch_assoc (lo so che hai usato mysql_fetch_array ma ti assicuro che questo ti piacerà di più ed è più veloce a livello di esecuzione.) e anche la documentazione del while (...) { ... } do; (tu hai usato foreach ma vedrai che è più corretto il metodo che usa il while ... do);
Ecco i link. Scusa per la presa per il culo che hanno ma mi piace molto l'effetto grafico =). Non leggere nemmeno le prese per il culo che contengono. (Usalo con i tuoi amici! )
http://lmgtfy.com/?q=php.net+mysql_fetch_assoc&l=1
Leggi la documentazione e il terzo esempio (a partire dalla riga while ($a = mysql_fetch_assoc($z)) { ).
Ecco la correzione:
Codice PHP:
while ($record = mysql_fetch_array($lista_utenti)) {
//Fai qualcosa come, ad esempio...
echo $record['utente'];
}
Buon lavoro e dacci dentro! ;)