Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema su controllo degli utenti online

    Salve a tutti, ho un problema con un sito che sto scrivendo
    Il problema è nel fatto che ho un sito con sistema di login, e volevo fare in modo di riuscire ad avere una lista degli utenti connessi in quel momento
    Ho trovato un modo usando 2 file esterni
    controlla_stato_utenti.php
    Codice PHP:
    <?PHP
        
    include 'db_connect.php';
        include 
    'functions.php';
        
    sec_session_start(); // Our custom secure way of starting a php session.
        
        
    $id_utente $_SESSION['user_id'];
        
    $sql "SELECT id FROM members WHERE stato = 1";
        
    $rssql mysql_query$sql );

       while( 
    $r mysql_fetch_array$rssql ) ){
          
    $secondi 120// 2 minuti
          // controllo se gli utenti non fanno nulla da almeno 2 minuti
          
    if ( ( time() - $r[data_login] ) > $secondi ) {
             
    $sql "UPDATE members SET stato = 0, data_login = 0 WHERE id = $id_utente LIMIT 1";
             
    mysql_query$sql );
          }
       }
    ?>
    e aggiorna_stato_utenti.php

    Codice PHP:
    <?PHP
        
    include 'db_connect.php';
        include 
    'functions.php';
        
    sec_session_start(); // Our custom secure way of starting a php session.
        
        
    $id_utente $_SESSION['user_id'];
        
    $sql "UPDATE members SET stato = 1, data_login = " time() . " WHERE id = $id_utente LIMIT 1";
        
    $result mysql_query$sql,$mysqli );
        die(
    "Errore nella query $sql: " mysql_error());
    ?>
    Mettendo manualmente nella pagina di processo del login la query dove agigornava a 1 lo stato quando l'utente era online, mi da un errore di connesisone che però non riesce a dirmi, e adesso non mi genera nessun errore o altro, solamente non aggiorna lo stato
    Cosa può essere?

    dimenticavo, nella pagina principale ho questi per attivare quelle pagine

    Codice PHP:
    f window.onclick = function() {
          var 
    pag "inc/aggiorna_stato_utente.php";

          
    // Riachiamo questa pagina con ajax ad ogni click dell'utente sulla finestra
          // La funzione di riferimento si trova nel file ajax.js che scarichi al link sopra
          
    genera_postpag'''' );
       }
       
       
       
       
    window.onload = function() {
          var 
    pag "inc/controlla_stato_utenti.php";
          var 
    tempo 10000// 10 secondi
          
          // Controllo gli utenti online ogni 10 secondi
          // La funzione di riferimento si trova nel file ajax.js che scarichi al link sopra
          
    window.setTimeout"genera_post( pag, '', '' )"tempo );
       } 

  2. #2
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Codice PHP:
    $result mysql_query$sql,$mysqli );
    die(
    "Errore nella query $sql: " mysql_error()); 
    così lo script si blocca sempre, sia che vada bene o meno.

    Codice PHP:
    $result mysql_query$sql,$mysqli ) or die("Errore nella query $sql: " mysql_error()); 
    così lo blocchi solo se non va a buon fine

    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  3. #3
    azz me lo ero perso quello, grazie!
    Ma se io volessi trasformare quei 2 file secondo i Non-prepared statement? perchè ho visto che tutto il resto non va

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.