Salve a tutti.

Creando una pagina per gli utenti loggati presenti al sito ho riscontrato alcuni problemi.

1)Anke se il login viene errato, nella lista presenti viene inserito il nome che l'utente aveva inserito nel campo di login.
2)Non so perchè ma dopo circa 3-4 login affettuati nella lista presenti ci sono prima 4-5 utenti fantasma, ovvero i campi sono vuoti, come se questi utenti nn avessero nome!

N.B. I presenti vengono identificati perchè nella pagina di verifica login c'è una query insert che inserisce il nome nella tabella presenti, se il login è avvenuto con successo.

questo è il codice della pagina di verifica login:
Codice PHP:
<?php
session_start
();
dbconnect();
if (!isset(
$verified_user)) $verified_user='';
if (
$action=='login') {
    
$result=mysql_query("SELECT id,Nick,Pass,    Esilio,Motivo_ FROM login WHERE Nick='".$nick."' AND Pass='".$psw."'");
    if (
mysql_num_rows($result)>0) list($verified_user)=mysql_fetch_row($result);
    else 
$verified_user='';
}
session_register("verified_user");
?>
<?php
setcookie
("user_id"$nick0$cookie_path$cookie_host);?>
<?php
if ($verified_user != '') {
include(
'mappa.php');
} else {
    if (
$action == "login" && $verified_user == '') {
        include(
'errore_login.php');
    }
    
?>


<?php
    
}
function 
dbconnect() { 
mysql_connect("localhost""xxx""yyy"); 
@
mysql_select_db("xxx_com") or die ("Unable to select database"); 
}
?>
<?
if ($verified_user != '') {
$query "SELECT Nick,Stato,Carica,Simbolo,Polis FROM pgu WHERE Nick='$user_id'"
$result mysql_query($query$db); 
$row mysql_fetch_array($result); 

$query "INSERT INTO presenti (Nick,Luogo,Carica,Simbolo,Polis) VALUES ('$user_id', 'in Mappa', '$row[Carica]', '$row[Simbolo]', '$row[Polis]')";
$result mysql_query($query$db); 
?>
grazie, ciao...