Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    225

    [Controllo su colonna] ...

    Salve,
    una cosina veloce veloce.

    Ho fatto una query che mi estrapola il contenuto di una colonna in base ad una condizione nella clausola where:

    select colonna from tabella where cond = '...';

    Nel risultato ci sono dei campi con dei valori e dei campi nulli.
    Devo fare un controllo sul risultato della query.
    Cioè se nel risultato ci sono dei valori nulli, allora faccio un'operazione, altrimenti se non c'è nessun valore nullo, ne faccio un'altra.

    Come posso fare a controllare questo?

    Grazie

  2. #2
    una volta fatta la query tu fai...

    Codice PHP:

    <?while ($risultato=mysql_fetch_array($query)) {
        
    $campo1=$risultato['nomecampo1'];
        
    $campo2=$risultato['nomecampo2'];
            ....................
    }

    if((
    $campo1=="")||($campo2=="")){
    .....
    }else{
    .....
    }
    ?>

  3. #3
    select IF(ISNULL(campo), 0, campo) AS tuocampo from tabella where condizione

    così controlli se il campo ha valore 0 o qualcosa che decidi tu

    dovrebbe funzionare

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    225

    [controllo su]

    Si ma,
    in effetti devo fare questo:

    <?while ($risultato=mysql_fetch_array($query)) {
    $campo1=$risultato['nomecampo1'];
    }

    if($campo1 == null){
    .....
    }else{
    .....
    }
    ?>

    Il problema è che se tra i valori di nomecampo1 c'è uno nullo,
    il codice mi porta sempre all'else!!! Dovrebbe andare nell'if.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    225

    [controllo su ...]

    la tua idea di settare a 0 il campo nullo è ottima,

    select IF(ISNULL(campo), 0, campo) AS tuocampo from tabella where condizione

    così controlli se il campo ha valore 0 o qualcosa che decidi tu

    dovrebbe funzionare

    però il problema sta proprio nel controllare se ci sono campi con valore 0. Questo non riesco a fare.

    Come potrei fare?
    Grazie ancora

  6. #6
    if ($row['campo']==0)
    {
    fai qualcosa
    }
    else
    {
    fai qualcos'altro
    }

    forse non ho capito il problema...

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    225

    [controllo ...]

    Ti spiego meglio:
    Ho una tabella con una colonna con all'interno N valori.
    Di questi N valori alcuni sono valori nulli.
    Quindi se dopo aver fatto la query, "escono" valori nulli, allora vado nell'if, altrimenti se non "escono" valori nullo, vado nell'else:

    SELECT IF(ISNULL(campo), 0, campo) AS MIOCAMPO
    FROM ....
    WHERE .....

    La query mi setta 0 nei campi con valori nulli.

    $res = mysql_query($query);

    for ($i = 0; $i < mysql_num_rows($res); $i++) {
    $row = mysql_fetch_array($res);
    }

    if($row['campo]==0) {
    echo "Sto nell'if
    ";
    }
    else {
    echo "
    Sto nell'else
    ";
    }

    In pratica se nella tabella ci sono valori nulli o non c'è ne nessuno,
    il codice mi porta sempre nell'if

    Perchè?

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.