Pagina 2 di 2 PrimoPrimo 12
Visualizzazione risultati 31 fino 43 di 43
Like Tree4Likes

Discussione: Visualizzare zodiaco

  1. #31
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    e questo?


    Codice PHP:
    $datanascita $row['birthday']; 
    Codice PHP:

    <?php
    require_once ("../funzioni/astro.php");

    //row['birthday']; ('2020/05/31'  solo per test)
    $datanascita $row['birthday'];

    // scorporo data in GIORNO e MESE
    $day   = (int) date('j',strtotime($datanascita));
    $month = (int) date('n',strtotime($datanascita));
    echo(
    getsign($day$month));  


    ?>
    Ultima modifica di blackskyisback : 31-08-2020 alle ore 21.21.04

  2. #32
    darbula non  connesso AlterGuru
    Data registrazione
    24-04-2011
    Messaggi
    2,037

    Predefinito

    Codice PHP:
    $date = new DateTime($row['birthday'], new DateTimeZone('UTC'));
    $day = (int) $date->format('j');
    $month = (int) $date->format('n');
    echo 
    getsign($day$month); 

  3. #33
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    il risultato rimane invariato anche dopo la modifica

    Birthday

    1998-12-22

    risultato: Sagittarius - Sagittario (23 novembre-21 dicembre)

    Codice PHP:
    if(($month==11 && $day>22)||($month==12 && $day<23)) {
            
    $mysign "Sagittarius";
        } 
    dovrebbe essere

    Capricorn - Capricorno (22 dicembre-20 gennaio)

    Codice PHP:
    if(($month==12 && $day>22)||($month==&& $day<21)) {
            
    $mysign "capricorn";
        } 

    quale di questi 2 codici e' esatto, perche' quello modificato con Wikipedia non funziona?

    questo funziona

    Codice PHP:

    <?php // visualizza i segni zodiaci in base al calcolo del mese sul campo birthday

    function getsign($day,$month) {
        if((
    $month==&& $day>20)||($month==&& $day<20)) {
            
    $mysign "aquarius";
        }
        if((
    $month==&& $day>18 )||($month==&& $day<21)) {
            
    $mysign "pisces";
        }
        if((
    $month==&& $day>20)||($month==&& $day<21)) {
            
    $mysign "aries";
        }
        if((
    $month==&& $day>20)||($month==&& $day<22)) {
            
    $mysign "taurus";
        }
        if((
    $month==&& $day>21)||($month==&& $day<22)) {
            
    $mysign "gemini";
        }
        if((
    $month==&& $day>21)||($month==&& $day<24)) {
            
    $mysign "cancer";
        }
        if((
    $month==&& $day>23)||($month==&& $day<24)) {
            
    $mysign "leo";
        }
        if((
    $month==&& $day>23)||($month==&& $day<24)) {
            
    $mysign "Virgo" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo2.png" width="15px" height="15px"></img>';
        }
        if((
    $month==&& $day>23)||($month==10 && $day<24)) {
            
    $mysign "libra";
        }
        if((
    $month==10 && $day>23)||($month==11 && $day<23)) {
            
    $mysign "scorpio";
        }
        if((
    $month==11 && $day>22)||($month==12 && $day<23)) {
            
    $mysign "Sagittarus" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius2.png" width="15px" height="15px"></img>';
        }
        if((
    $month==12 && $day>22)||($month==&& $day<21)) {
            
    $mysign "capricorn";
        }
        return 
    $mysign;
    }

    ?>

    Questo e' l'altro codice con le date dei mesi prese da Wikipedia, ma sembra che non funziona su alcuni mesi

    Codice PHP:

    <?php // visualizza i segni zodiaci in base al calcolo del mese sul campo birthday

    ///La sequenza

    //La sequenza nasce dall'intersezione tra i 4 elementi e i 3 tipi, esaurendo in particolare ogni possibile combinazione.
    //  Segno                            Durata
    //  Aries - Ariete                  21 marzo-20 aprile
    //  Taurus - Toro                  21 aprile-20 maggio
    //  Gemini - Gemelli              21 maggio-21 giugno
    //  Cancer - Cancro              22 giugno-22 Luglio
    //  Lion - Leone                  23 luglio-23 agosto
    //  Virgo - Vergine              24 agosto-22 settembre
    //  Libra - Bilancia             23 settembre-22 ottobre
    //  Scorpio- Scorpione            23 ottobre-22 novembre
    //  Sagittarius - Sagittario     23 novembre-21 dicembre
    //  Capricorn - Capricorno          22 dicembre-20 gennaio
    //  Aquario - Aquarius              21 gennaio-19 febbraio
    //  Pisces - Pesci                  20 febbraio-20 marzo 

    function getsign($day,$month) {

        
    //  Aquario - Aquarius              21 gennaio-19 febbraio 
        
    if(($month==&& $day>21)||($month==&& $day<19)) {
            
    $mysign "aquarius";
        }
        
    //  Pisces - Pesci                  20 febbraio-20 marzo 
        
    if(($month==&& $day>20 )||($month==&& $day<20)) {
            
    $mysign "pisces";
        }
        
    //  Aries - Ariete                  21 marzo-20 aprile
        
    if(($month==&& $day>21)||($month==&& $day<20)) {
            
    $mysign "Aries";
        }
        
    //  Taurus - Toro                  21 aprile-20 maggio
        
    if(($month==&& $day>21)||($month==&& $day<20)) {
            
    $mysign "taurus";
        }
        
    //  Gemini - Gemelli              21 maggio-21 giugno
        
    if(($month==&& $day>21)||($month==&& $day<21)) {
            
    $mysign "Gemini - Gemelli (21 maggio-21 giugno)"'&nbsp;&nbsp;' 
            
    '<img src="http://forum.it.altervista.org/image_upload/zodiac/Gemini1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Gemini2.png" width="20px" height="20px"></img>'
            
    ;
        }
        
    //  Cancer - Cancro              22 giugno-22 Luglio
        
    if(($month==&& $day>22)||($month==&& $day<22)) {
            
    $mysign "cancer";
        }
        
    //  Lion - Leone                  23 luglio-23 agosto
        
    if(($month==&& $day>23)||($month==&& $day<23)) {
            
    $mysign "leo";
        }
        
    //  Virgo - Vergine              24 agosto-22 settembre
        
    if(($month==&& $day>24)||($month==&& $day<22)) {
            
    $mysign "Virgo" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo2.png" width="15px" height="15px"></img>';
        }
        
    //  Libra - Bilancia             23 settembre-22 ottobre
        
    if(($month==&& $day>23)||($month==10 && $day<22)) {
            
    $mysign "libra";
        }
        
    //  Scorpio- Scorpione            23 ottobre-22 novembre
        
    if(($month==10 && $day>23)||($month==11 && $day<22)) {
            
    $mysign "scorpio";
        }
        
    //  Sagittarius - Sagittario     23 novembre-21 dicembre
        
    if(($month==11 && $day>23)||($month==12 && $day<21)) {
            
    $mysign "Sagittarus" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius2.png" width="15px" height="15px"></img>';
        }
        
    //  Capricorn - Capricorno          22 dicembre-20 gennaio
        
    if(($month==12 && $day>22)||($month==&& $day<20)) {
            
    $mysign "capricorn";
        }
        
        return 
    $mysign

    }    

    ?>

  4. #34
    GraphOGLRisorse  connesso ora AlterGuru
    Data registrazione
    14-02-2015
    Messaggi
    1,095

    Predefinito

    Quello di wiki, predendone uno come esmpio:
    Codice PHP:
        //  Aquario - Aquarius              21 gennaio-19 febbraio 
        
    if(($month==&& $day>21)||($month==&& $day<19)) {
            
    $mysign "aquarius";
        } 
    Se il periodo dal 21 Gennaio al 19 Febbraio, cos come impostato nel codice, indica un periodo dal 22 gennaio al 18 febbraio.

    Dovrebbe essere cos, per indicare il periodo giusto.
    Codice PHP:
        //  Aquario - Aquarius              21 gennaio-19 febbraio 
        
    if(($month==&& $day>20)||($month==&& $day<20)) {
            
    $mysign "aquarius";
        } 
    dovrebbe essere

    Capricorn - Capricorno (22 dicembre-20 gennaio)
    Infatti, provando la data menzionata dalei con i valori modificati nel codice, restituisce il segno del Capricorno.
    Codice PHP:
    function getsign($day,$month) {

        
    //  Aquario - Aquarius              21 gennaio-19 febbraio 
        
    if(($month==&& $day>20)||($month==&& $day<20)) {
            
    $mysign "aquarius";
        }
        
    //  Pisces - Pesci                  20 febbraio-20 marzo 
        
    if(($month==&& $day>19 )||($month==&& $day<21)) {
            
    $mysign "pisces";
        }
        
    //  Aries - Ariete                  21 marzo-20 aprile
        
    if(($month==&& $day>20)||($month==&& $day<21)) {
            
    $mysign "Aries";
        }
        
    //  Taurus - Toro                  21 aprile-20 maggio
        
    if(($month==&& $day>20)||($month==&& $day<21)) {
            
    $mysign "taurus";
        }
        
    //  Gemini - Gemelli              21 maggio-21 giugno
        
    if(($month==&& $day>20)||($month==&& $day<22)) {
            
    $mysign "Gemini - Gemelli (21 maggio-21 giugno)"'&nbsp;&nbsp;' 
            
    '<img src="http://forum.it.altervista.org/image_upload/zodiac/Gemini1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Gemini2.png" width="20px" height="20px"></img>'
            
    ;
        }
        
    //  Cancer - Cancro              22 giugno-22 Luglio
        
    if(($month==&& $day>21)||($month==&& $day<23)) {
            
    $mysign "cancer";
        }
        
    //  Lion - Leone                  23 luglio-23 agosto
        
    if(($month==&& $day>22)||($month==&& $day<24)) {
            
    $mysign "leo";
        }
        
    //  Virgo - Vergine              24 agosto-22 settembre
        
    if(($month==&& $day>23)||($month==&& $day<23)) {
            
    $mysign "Virgo" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Virgo2.png" width="15px" height="15px"></img>';
        }
        
    //  Libra - Bilancia             23 settembre-22 ottobre
        
    if(($month==&& $day>22)||($month==10 && $day<23)) {
            
    $mysign "libra";
        }
        
    //  Scorpio- Scorpione            23 ottobre-22 novembre
        
    if(($month==10 && $day>22)||($month==11 && $day<23)) {
            
    $mysign "scorpio";
        }
        
    //  Sagittarius - Sagittario     23 novembre-21 dicembre
        
    if(($month==11 && $day>22)||($month==12 && $day<22)) {
            
    $mysign "Sagittarus" '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius1.png" width="15px" height="15px"></img>'
            
    '&nbsp;&nbsp;' '<img src="http://forum.it.altervista.org/image_upload/zodiac/Sagittarius2.png" width="15px" height="15px"></img>';
        }
        
    //  Capricorn - Capricorno          22 dicembre-20 gennaio
        
    if(($month==12 && $day>21)||($month==&& $day<21)) {
            
    $mysign "capricorn";
        }
        return 
    $mysign

    Cordiali saluti.
    blackskyisback likes this.

  5. #35
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    Interessante, sembra funzionare

    non ho capito la logica di togliere ed aggiungere un giorno pero'

  6. #36
    GraphOGLRisorse  connesso ora AlterGuru
    Data registrazione
    14-02-2015
    Messaggi
    1,095

    Predefinito

    La logica semplice.

    Se si pone una variabile maggiore di un valore, tale valore non sar preso in considerazione. Ovvero saranno presi solo i valori superiori.
    Se si pone una variabile minore di un valore, tale valore non sar preso in considerazione. Ovvero saranno presi solo i valori inferiori.

    Comunuqe, in alternativa, se si vuole lasciare i numeri invariati, si pu mettere >= e <=, il risultato e lo stesso.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 01-09-2020 alle ore 14.51.20

  7. #37
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    La logica semplice.

    Se si pone una variabile maggiore di un valore, tale valore non sar preso in considerazione. Ovvero saranno presi solo i valori superiori.
    Se si pone una variabile minore di un valore, tale valore non sar preso in considerazione. Ovvero saranno presi solo i valori inferiori.

    Cordiali saluti.


    piu' confuso di prima


    comunque grazie a lei ,e a tutti ovviamente

    ps GraphOGLRisorse: lo ha letto l'altro thread? le ho scritto

  8. #38
    GraphOGLRisorse  connesso ora AlterGuru
    Data registrazione
    14-02-2015
    Messaggi
    1,095

    Predefinito

    No non me n'ero accorto, comunque l'ho letto adesso.

    Le rispondo sull'altra discussione per non adare fuori tema.

    Cordiali saluti.

  9. #39
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    Rieccomi, ho notato una strana cosa,

    se inserisco una data con solo l'anno , senza mese e giorno, mi restituisce sempre Sagittarus

    esempio:

    2008-00-00 risultato Sagittarus

    2009-00-00 risultato Sagittarus

    ecc...

    si potrebbe fare in modo che se e' presente solo l'anno venga visualizzato un messaggio simile:

    Zodiaco non e' presente

    Grazie

  10. #40
    darbula non  connesso AlterGuru
    Data registrazione
    24-04-2011
    Messaggi
    2,037

    Predefinito

    Codice PHP:
    $datanascita = isset($row['birthday']) ? $row['birthday'] : null;
    if(
    strlen($datanascita) == 10 && ((int) substr($datanascita04)) && ((int) substr($datanascita52)) && ((int) substr($datanascita82))) {
    $date = new DateTime($datanascita, new DateTimeZone('UTC'));
    $day = (int) $date->format('j');
    $month = (int) $date->format('n');
    echo 
    getsign($day$month);
    } else {
    echo 
    'datanascita assente';

    Il mese e giorno zero non esiste, $row['birthday'] pu contenere anche solo l'anno oppure assente(in mysql significa valore null) ecco gli (esempi: 2020, 1970, 70 etc.)? se invece hai anche gli zeri il codice da me proposto ovviamente non funziona ma sono sicuro ti sarai espresso male e non usi gli zeri.
    Post editato per il mode NO_ZERO_IN_DATE/NO_ZERO_DATE disattivato e possibilmente strict mode disabilitato.
    Uhm se stai usando il tipo DATE probabilmente UTC non riflette la data corretta sto implementando il codice.
    Ultima modifica di darbula : 01-09-2020 alle ore 16.34.24
    blackskyisback likes this.

  11. #41
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    Ciao darbula

    e cosi, anno con gli zeri, il campo birthday e di tipo date, anche se in mysql inserisco 2000 poi vengono aggiunti degli zero in automatico

    quindi 2000-00-00 (anno,mese, giorno)
    Ultima modifica di blackskyisback : 01-09-2020 alle ore 15.49.51

  12. #42
    darbula non  connesso AlterGuru
    Data registrazione
    24-04-2011
    Messaggi
    2,037

    Predefinito

    Si corretto per il tipo date di mysql, sto preparando il codice tra poco aggiorno.
    codice aggiornato http://forum.it.altervista.org/php-m...ml#post1454762
    Ultima modifica di darbula : 01-09-2020 alle ore 16.25.53

  13. #43
    blackskyisback non  connesso Utente giovane
    Data registrazione
    29-05-2012
    Messaggi
    95

    Predefinito

    darbula funziona perfettamente

    Grazie tante

Pagina 2 di 2 PrimoPrimo 12

Tags for this Thread

Regole di scrittura

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