Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662

    Selezionare utente in RANDOM con controllo su esistenza file

    Ciao a tutti!!

    Domandina!!
    Nella home del mio sito/progetto vorrei mettere un riquadrino con l'avatar di un utente a caso.
    Quindi basterebbe fare una ricerca random tra gli id e il gioco è fatto, giusto?
    (ah ah!! a parole )

    I problemi sono due:
    Non ho gli ID in sequenza (alcuni vengono cancellati)
    Devo prevedere la condizione che esista il file jpg dell'avatar (potrebbe non averlo impostato)

    Mi sapreste aiutare?
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    pseudocodice, io farei questo ragionamento
    $riga=//numero casuale fra 1 e numero righe tabella

    poi Select * from utenti limit $riga-1,$riga

  3. #3
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    Una cosa di questo tipo?

    Codice PHP:
    $query "SELECT * FROM [miatabella]";
    $result mysql_query($query$connect);
    $num mysql_num_rows($result);
    $random rand (1,$num);

    echo 
    $random
    Ma così so il numero della riga, non l'ID della riga (es. riga 23 = ID 134)
    E poi come gli do la condizione "seleziona se esiste il file [uset]_avatar.jpg" ?
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    poi devi proseguire

    Codice PHP:
    $query "SELECT * FROM [miatabella]"
    $result mysql_query($query$connect); 
    $num mysql_num_rows($result); 
    $random rand (1,$num); 


    $query "SELECT * FROM [miatabella] limt ".($random-1).",".$random
    $result mysql_query($query$connect); 
    $userRow=mysql_fetch_row($result);

    echo 
    $userRow['immagineprofilo']; 

  5. #5
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    mi sa che ti ho detto una beeeeeeeeeeeepppppp

  6. #6
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    ho fatto così:

    Codice PHP:
        $query "SELECT * FROM users"
        
    $result mysql_query($query$connect); 
        
    $num mysql_num_rows($result); 
        
    $random rand (1,$num);  
        
        
    $query "SELECT * FROM users limt ".($random-1).",".$random
        
    $result mysql_query($query$connect); 
        
    $userRow mysql_fetch_row($result);
        
        echo 
    $random."
    "
    ;
        echo 
    $userRow['id']; 
    ma mi da errore:
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /web/htdocs/www.sito.it/home/pages/home.php on line 13 11

    (dove 11 alla fine è il numero random e la linea 13 è: $userRow = mysql_fetch_row($result); )
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  7. #7
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    prova così
    Codice PHP:
    $query "SELECT * FROM users";  
        
    $result mysql_query($query$connect);  
        
    $num mysql_num_rows($result);  
        
    $random rand (0,$num-1);   
         
        
    $query "SELECT * FROM users limt $random, 1";  
        
    $result mysql_query($query$connect);  
        
    $userRow mysql_fetch_row($result); 
         
        echo 
    $random."
    "

        echo 
    $userRow['id']; 

  8. #8
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    Ho fatto così:

    Codice PHP:
        $query "SELECT * FROM users ORDER BY RAND() limit 1,1"
        
    $result mysql_query($query$connect); 
        
    $num mysql_fetch_array($result); 
        
        echo 
    $num['id']."
    "

    Sembra funzionare, mi confermi?

    Ora dovrei creare la condizione per l'esistenza dell'immagine... del tipo:

    1° record - "se esiste il file $num['username']_avatar.jpg allora ok, altrimenti passa oltre"
    2° record - "se esiste il file $num['username']_avatar.jpg allora ok, altrimenti passa oltre"
    3° record - "se esiste il file $num['username']_avatar.jpg allora ok, altrimenti passa oltre"
    4° record - "se esiste il file $num['username']_avatar.jpg allora ok, altrimenti passa oltre"

    come posso fare?

    ----

    (...zzarola, in contemporanea!! )
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  9. #9
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    bello si vede che non sono esperto in mysql
    prova così

    Codice PHP:
    $trovato=false;
    $where="";
    $finitosenzatrovare=false;
    while(!
    $trovato || !$finitosenzatrovare)
    {
       
    $query "SELECT * FROM users where ".$where." ORDER BY RAND() limit 1,1";
       
    $where.="id<> "$num['id'] ." AND ";

        
    $result mysql_query($query$connect);  
        if(!
    $userRow mysql_fetch_row($result))
        {
               
    $finitosenzatrovare=true;
        } 


       if(
    esistefile)
       {
            
    $finito=true;
        }


  10. #10
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    OMMAMMASAURA!!! E che è!?!?
    Ok dai, me lo studio un attimo e ti faccio sapere come va!
    Intanto grazie mille per la tua disponibilità, come sempre!
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

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.