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

    Come selezionare i primi 3 record di una tabella MySQL

    Buonasera ragazzi

    la domanda è semplice: come faccio a selezionare solo i primi 3 record di una tabella MySQL con l'uso di PHP?
    E poi come faccio a stampare a video i risultati ottenuti?

    Ho fatto così:

    codice:
    $controllo = mysql_query("SELECT nome_foto FROM foto WHERE id_utente = '".$id_utente."' ORDER BY numero_foto DESC LIMIT 0,2") or die ("Errore nella lettura del database.");
    $array_result=mysql_fetch_row($controllo);
    $nome_foto1=$array_result[0];
    $nome_foto2=$array_result[1];
    $nome_foto3=$array_result[2];
    echo "Nome1: $nome_foto1, nome2: $nome_foto2, nome3: $nome_foto3";
    Mi da questo errore:
    codice:
    Notice: Undefined offset: 1 in C:\Programmi\EasyPHP-5.3.2i\www\aaa\profilo.php on line 190
    
    Notice: Undefined offset: 2 in C:\Programmi\EasyPHP-5.3.2i\www\aaa\profilo.php on line 191
    
    Nome1: 22.jpg, nome2: , nome3:
    Come potete vedere il primo indice dell'array contiene il nome "22.jpg" ma gli altri come mai non vengono letti?
    Cosa sbaglio?

    Grazie

  2. #2
    prova a mettere cosi

    $controllo = mysql_query("SELECT nome_foto FROM foto WHERE id_utente = '".$id_utente."' ORDER BY numero_foto DESC LIMIT 0,2")";
    $result=mysql_query($controllo) or die(mysql_error());
    while($a=mysql_fetch_array($result)){
    $nome_foto=$a['nome_foto'];
    echo "Nome: $nome_foto
    ";

    }

  3. #3
    Originariamente inviato da simone.marchese
    prova a mettere cosi

    $controllo = mysql_query("SELECT nome_foto FROM foto WHERE id_utente = '".$id_utente."' ORDER BY numero_foto DESC LIMIT 0,2")";
    $result=mysql_query($controllo) or die(mysql_error());
    while($a=mysql_fetch_array($result)){
    $nome_foto=$a['nome_foto'];
    echo "Nome: $nome_foto
    ";

    }
    Così mi restituisce i campi di tutti i record presenti.
    Come faccio ad avere solo i primi 3?

  4. #4
    con limit 3 dovresti visualizzare solo tre record prova a levare lo 0,2 e mettere tre

  5. #5
    Originariamente inviato da simone.marchese
    con limit 3 dovresti visualizzare solo tre record prova a levare lo 0,2 e mettere tre
    Continua a fare la stessa cosa.
    Ho letto sul web che si può anche scrivere SELECT TOP 3 ma non cambia nulla...

  6. #6
    Scrivi cosi

    $controllo = "SELECT nome_foto FROM foto WHERE id_utente = '".$id_utente."' ORDER BY numero_foto DESC LIMIT 3";

  7. #7
    Originariamente inviato da simone.marchese
    Scrivi cosi

    $controllo = "SELECT nome_foto FROM foto WHERE id_utente = '".$id_utente."' ORDER BY numero_foto DESC LIMIT 3";
    Nulla da fare... sempre il solito messaggio di errore. Troppo strano!
    E' come se gli indici dell'array fossero vuoti (ma non lo sono perchè i record esistono e i loro campi sono compilati).

  8. #8
    Perchè parli di array?
    Da quello che ti ho fatto scrivere gli array non esistono più posta bene il codice che hai inserito nel file...

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.