Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26

Discussione: php - MySQL

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101

    php - MySQL

    Salve, io avrei un problemino, ho dentro un database mysql una lista di numeri, da 1 a 100 (non completa) e volevo sapere se era possibile, e in tal caso come potevo fare,
    far si che con php mi controlli la lista dei numeri da 1,2,3,...,99,100 con quelli presenti nel database..... ritornandomi in un array o in variabili i numeri ancora "liberi", qioè quelli che non sono presenti nel database...

    è possibile? come potrei fare?

    Ringrazio anticipatamente per le risposte!

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    così dovrebbe andare:
    codice:
    $st=mysql_query("SELECT numero FROM tabella") or die(mysql_error());
    $cont=1;
    while($row=mysql_fetch_assoc($st)){
    	if($row['numero'] != $cont)
    		$temp[]=$cont;
    	$cont++;
    }


    think simple think ringo

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    grazie mille... ma poi quale sarebbe la variabile che contiene i numeri non occupati?
    come mostro i numeri rimasti liberi?

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    Scusa, ma ho provato e non funziona!
    non è un quesito semplice come sembra.

  5. #5
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    $a=array();
    $st=mysql_query("SELECT numero FROM tabella") or die(mysql_error());
    while($row=mysql_fetch_assoc($st)) $a[]=$row[numero];
    $b=range(1,100);
    $c=array_diff($a,$b);

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    ti posto quello che ho scritto:


    $a=array();
    $st=mysql_query("SELECT numero FROM tabella") or die(mysql_error());
    while($row=mysql_fetch_assoc($st)){
    $a[]=$row[numero];
    $b=range(1,100);
    $c=array_diff($a,$b);
    foreach ($row as $key => $value )
    echo $value;
    }

    mi torna con $value la lista dei numeri già occupati invece dovrebbe tornarmi quelli ancora disponibili...

    cosa dovrei cambiare?

    La mia idea sarebbe di rendere visibile in una tabella... o in una riga i numeri ancora disponibili... ad esempio:


    Numeri ancora liberi: 13, 15, 56, 76, 98!

  7. #7
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    [supersaibal]Originariamente inviato da Teuzzo
    $a=array();
    $st=mysql_query("SELECT numero FROM tabella") or die(mysql_error());
    while($row=mysql_fetch_assoc($st)) $a[]=$row[numero];
    $b=range(1,100);
    $c=array_diff($a,$b); [/supersaibal]
    Non aggiungere la parentesi graffa!

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    si ok... ma non funziona ugualmente...
    come dovrei fare dopo x far si che mi mostri i numeri liberi?

  9. #9
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    $c è l'array dei numeri liberi.

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    ok... fin qui siamo d'accordo..
    ma poi l'array per separarlo in variabili...

    devo fare:

    foreach ($c as $key => $value )
    echo $value;


    oppure un

    while ($c) {
    foreach ($row as $key => $value )
    echo $value;
    }

    ??
    così da avere una variabile x ogni numero


    xchè se faccio
    foreach ($c as $key => $value )
    print "$value\n";
    }

    mi stampa solo 0 0 0 0 0 0 0 0 0 0 0 0

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 © 2024 vBulletin Solutions, Inc. All rights reserved.