Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111

    più variabili da una query...

    Ciao a tutti, da qualche ora che sto cercando di venirne a capo...
    magari non si può... però chiedere non costa nulla!!

    Io faccio una query in un db, tutto ok!
    come faccio a man mano che trova i risultati a versarli su diverse variabili?
    per farvi capire meglio, ho una tabella "impegni" e sulla variabile "giorni" ho 5 giorni, questi 5 giorni li devo prendere e mettere in 5 variabili diverse che poi tramite un controllo "if" li devo controllare (mi serve su un calendario), io pensavo ad una variabile a incremento però nulla, non riesco a gestirla come voglio, c'è qualche metodo?

    grazie!!!

  2. #2
    Utente di HTML.it L'avatar di vikey89
    Registrato dal
    Apr 2009
    Messaggi
    333
    array
    <br />
    http://www.vikeydesign.it
    -----------------------------------
    <?php echo "Hello World!"; ?>

  3. #3
    Allora....tabella impegni, colonna giorni (e non variabile giorni ). In questa colonna hai 5 record. quindi fai:

    Codice PHP:
    $query "SELECT giorni FROM impegni";
    $result mysql_query($query);
    $array mysql_fetch_array($result); 
    La variabile $array contiene un array associativo di dati. Per prendere ogni singolo valore puoi:

    1. Creare l'array e scorrerlo con un circo foreach;
    2. Utilizzare una sintassi molto più comune e semplice:

    Codice PHP:
    $query "SELECT giorni FROM impegni";
    $result mysql_query($query);
    while (
    $row mysql_fetch_array($result)) {

          
    $var $row['giorni'];


    Il circlo while assegna a $row tutti i record dell'array, uno dopo l'altro fino a quando ci sono dei record, quindi ad ogni iterazione $row['giorni'] conterrà un dato diverso (il successivo).

    V.I.S.T.A. --> Virus Inside, Switch To Apple

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111
    grande ma per fare un if di controllo come dovrei fare... ipotesi che ho la variabile $giorni (quella che mi crea i giorni del calendario), io dovrei controllarla con un "if" e se corrisponde parte lo script... l'ho fatto con 2 variabili di prova, ma non prese dal db

    Codice PHP:
    if ($row['giorni'] == $giorni){
    // ...
    }
    // ecc 
    cosi????
    e con gli array non è che li capisco molto...
    solo che non capisco come posso controllare 5 date con un semplice dato???

  5. #5
    Originariamente inviato da gatto76
    grande ma per fare un if di controllo come dovrei fare... ipotesi che ho la variabile $giorni (quella che mi crea i giorni del calendario), io dovrei controllarla con un "if" e se corrisponde parte lo script... l'ho fatto con 2 variabili di prova, ma non prese dal db

    Codice PHP:
    if ($row['giorni'] == $giorni){
    // ...
    }
    // ecc 
    cosi????
    e con gli array non è che li capisco molto...
    solo che non capisco come posso controllare 5 date con un semplice dato???
    si così.
    per le date, il campo giorni è DATE? nel caso lo fosse, allora in maniera molto rurale puoi fare

    Codice PHP:
    if($row['giorni'] == '2011-02-22') {
    ..
    }
    elseif(
    $wor['giorni'] == '2011-02-23') {
    ..
    }
    etc etc 
    ovviamente devi sostituire il valore con l'elemento di verifica
    http://codecanyon.net/category/all?ref=Manuelandro
    And I bet she told a million people that she'd stay in touch, Well all the little promises they dont mean much,When theres
    memories to be made

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111
    Scusate se vi stresso ancora... No $giorni è solo il giorno quindi la colonna giorni è un INT, Cmq volevo chiedere ma if devo farlo dentro il ciclo while ho posso farlo quando voglio?

  7. #7
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    ..fare delle prove no eh..
    se l'if lo fai nel ciclo, ogni valore di $row['giorni'] passerà "al vaglio".
    se lo fai fuori lo farà solo sull'ultimo..

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111
    Stasera sicuramente, e che adesso sono al lavoro
    Poi vi farò sapere...

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111
    Allora il sistema funziona, ma giustamente c'è un però, ho fatto varie prove e ottengo lo stesso risultato e cioè per creare il calendario il codice usa un ciclo for da cui crea i numeri e via dicendo corrispondenti ai giorni della settimana, il problema che facendo anche un ciclo while mi crea 2 volte lo stesso numero, nonostante mi colori quello che voglio... prima di modificare il calendario ho fatto delle prove che più ho meno sono simile al calendario.

    Codice PHP:
    <?php
    include "config.php";   
    include 
    "connessione.php";  
    for (
    $giorni 1$giorni <= 30$giorni++)
    {
    $query "SELECT giorno FROM prova";
    $result mysql_query($query); 
    while (
    $row mysql_fetch_array($result)) { 

          
    $var $row['giorno']; 

    if (
    $row['giorno'] == $giorni){
        echo 
    "<font color=\"#FF0000\"> ".$giorni."
    </font>"
    ;
    }else{
        echo 
    "<font color=\"#000000\"> ".$giorni."
    </font>"
    ;
      }
     }
    }
    ?>
    Ovviamente il codice del calendario è più complesso...

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    111
    WOW dopo prove su prove c'è l'ho fatta... fiuuuu che fatica...

    vi posto il codice che risolve i miei problemi poi continuerò a fare prove per altre cose...

    Codice PHP:
    <?php
    include "config.php";   
    include 
    "connessione.php"
    $num 1
    for (
    $giorni 1$giorni <= 30$giorni++)
    {
    $query "SELECT giorno FROM prova";
    $result mysql_query($query); 
    while (
    $row mysql_fetch_array($result)) { 

          
    $var[$num] = $row['giorno'];
          
    $num++; 
    }
    if ((
    $var[1] == $giorni) or ($var[2] == $giorni) or ($var[3] == $giorni) or ($var[4] == $giorni) or ($var[5] == $giorni) or ($var[6] == $giorni) or ($var[7] == $giorni) or ($var[8] == $giorni) or ($var[9] == $giorni) or ($var[10] == $giorni) or ($var[11] == $giorni) or ($var[12] == $giorni) or ($var[13] == $giorni) or ($var[14] == $giorni)) {
        echo 
    "<font color=\"#FF0000\"> ".$giorni."
    </font>"
    ;
    }else{
        echo 
    "<font color=\"#000000\"> ".$giorni."
    </font>"
    ;
      
     }
    }
    ?>
    ed ecco la soluzione, sinceramente mi è venuta così senza pensarci... però funzione non so cosa ho creato... penso un array dentro un array con un incremento di una variabile così posso uscire dal ciclo While e riprendere il ciclo FOR già iniziato senza doppi e altro...



    Ovviamente ho già provato sul calendario e funziona

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.