Visualizzazione risultati 1 fino 7 di 7

Discussione: Scelta a random di un elemento in una tabella

  1. #1
    Guest

    Predefinito

    mi potrete scrivere un piccolo script che sceglie a random un elemento contenuto in una tabella del database?
    Grazie

  2. #2
    Guest

    Predefinito

    Ciao mi disp nn so aiutarti,

    cmq dovresti postare su una sezione piu adeguata....

  3. #3
    Ospite Guest

    Predefinito

    se in quella tabella c'è un campo auto_increment selezioni prima con COUNT(id) il numero di record... poi usi rand(1,$id_totali); per sceglierne uno con un id casuale..

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da Camicio
    se in quella tabella c'è un campo auto_increment selezioni prima con COUNT(id) il numero di record... poi usi rand(1,$id_totali); per sceglierne uno con un id casuale..
    si ma il problema sta se io ho il campo continuo cioè 1,2,3,4,5,6... ecc tutti di seguito ma se ad esempio ho 1,3,4,5,7,8,ecc... quando cerca ad esempio 2 nn lo trova e dà l'errore... cmq si potrebbe risolvere con un $var++;

  5. #5
    L'avatar di marcio
    marcio non è connesso AlterGuru 2500
    Data registrazione
    17-08-2003
    Residenza
    Palermo
    Messaggi
    3,300

    Predefinito

    Potresti usare

    rand($min,$max);

    e eseguire la query,se resituisce un valore nullo rimandi alla funzione rand

  6. #6
    Guest

    Predefinito

    come si potrebbe fare?

  7. #7
    Ospite Guest

    Predefinito

    function tua($a) {
    $result = mysql_query("SELECT campo FROM tabella WHERE id='$a'",$db) or return 0;
    $row = mysql_fetch_array($result) or return 0;
    return $row['campo'];
    }

    $result = mysql_query("SELECT count(id) AS tot FROM tabella",$db);
    $row = mysql_fetch_array($result);
    $campo = tua(rand(1,$row['max']));
    while (!$campo)
    $campo = tua(rand(1,$row['max']));

    // e poi hai in $campo il valore di campo con un id casuale (non l'ho provato e non sono sicuro...)

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •