Calcolo eta' da fixare

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
perfetto :) funzionante al 100%

l'unica cosa che ho corretto

da

Codice:
" day remaining for your '.$bir_ann.'.";

a

PHP:
" day remaining for your $bir_ann"

GRAZIE
Tommy03

doppia birra :)
 
  • Like
Reactions: Tommy03

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
addesso visualizzo questo

BIRTHDAY

1959-01-22 - 61 anni

si puo' fare questo?

BIRTHDAY

1959-01-22 - 61 anni 3 mesi, 29 giorni

:rolleyes:

code calcolo eta' fixato by Tommy03

PHP:
<?php // code calcolo eta' fixato by Tommy03


$datanascita = $row['birthday'];

if($datanascita != "0000-00-00"){

$dateOfBirth = $datanascita;
$today = date("Y-m-d");
$diff = date_diff(date_create($dateOfBirth), date_create($today));



// //ciclo switch

$a = $diff->format('%y');

switch($a) {
case $a >= 10 && $a < 30 :
$anni = '<font color="green">' . $a . '</font>';
break;
case $a >= 30 && $a < 40 :
$anni = '<font color="blue">' . $a . '</font>';
break;
case $a >= 40 && $a < 50 :
$anni = '<font color="orange">' . $a . '</font>';
break;
case $a >= 50 :
$anni = '<font color="red">' . $a . '</font>';
break;
default :
$anni = 'No data';
}

}else{
$anni = "Campo vuoto";
$datanascita="";
}

?>
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?> - <b><?php echo $anni; ?></b> anni</p>
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Prova così:
Sostituisci questo:
PHP:
$a = $diff->format('%y');

switch($a) {
case $a >= 10 && $a < 30 :
$anni = '<font color="green">' . $a . '</font>';
break;
case $a >= 30 && $a < 40 :
$anni = '<font color="blue">' . $a . '</font>';
break;
case $a >= 40 && $a < 50 :
$anni = '<font color="orange">' . $a . '</font>';
break;
case $a >= 50 :
$anni = '<font color="red">' . $a . '</font>';
break;
default :
$anni = 'No data';
}
Con questo:
PHP:
$a = $diff->format('%y');
$mese = $diff->format('%m');
$giorno = $diff->format('%d');
switch($a) {
case $a >= 10 && $a < 30 :
$anni = '<font color="green">' . $a . ', '.$mese.', '.$giorno.'</font>';
break;
case $a >= 30 && $a < 40 :
$anni = '<font color="blue">' . $a . ','.$mese.', '.$giorno.'</font>';
break;
case $a >= 40 && $a < 50 :
$anni = '<font color="orange">' . $a . ', '.$mese.', '.$giorno.'</font>';
break;
case $a >= 50 :
$anni = '<font color="red">' . $a . ', '.$mese.', '.$giorno.'</font>';
break;
default :
$anni = 'No data';
}
Forse potrebbero esserci problemi con gli apici in questo codice, prova a vedere
 
Ultima modifica:
  • Like
Reactions: Alex_70

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
ciao Tommy03

sembra che funzioni :)

birthday.png


ma non dovrebbero essere 29 giorni? :rolleyes:

altro piccolo aiuto

se mesi e' 1 e giorno 1 vorrei visualizzare

1 mese - 1 giorno

cambiando
i con e
e
i con o

si puo' fare ? (nello stesso codice)

grazie :)
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Oppure puoi anche fare cosi:
Sostituisci da cosi
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $anni; ?></b> anni
         - <b><?php echo $mese; ?></b> mesi
         - <b><?php echo $giorno; ?></b> giorni
 
 
    </p>
A così:
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $anni; ?></b> <?php if($anni ==1){echo "anno";}else{echo "anni";}?>
         - <b><?php echo $mese; ?></b> <?php if($mese ==1){echo "mese";}else{echo "mesi";}?>
         - <b><?php echo $giorno; ?></b> <?php if($giorno ==1){echo "giorno";}else{echo "giorni";}?>
 
 
    </p>
 
  • Like
Reactions: Alex_70

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
risultato


birthday2.png


continuo ha pensare che comunque manca un giorno, secondo me :rolleyes:, o mi sbaglio?

oggi e' giorno 20, dovrebbe visualizzare 20 giorni e non 19

birthday3.png
 
Ultima modifica:

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Beh se uno nasce il primo maggio, il 20 maggio ha 19 giorni di vita per come lo interpreto io.
Al limite se a te non piace puoi aggiungere un +1
 

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
non lo so :)

se uno nasce il 20 maggio ha 20 giorni di vita, perche' escudere oggi?

strana questa cosa :rolleyes:

oppure il codice calcola quanti giorni mancano al compleanno, in questo caso e' esatto

o forse no

comunque grazie Tommy03
 

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
anni/o mesi/e e giorni/o come li nascondo se il campo e' vuoto?

:rolleyes:

Nessun dato disponibile deve rimanere

birthday5.png
 
Ultima modifica:

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Cambia da cosi
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $anni; ?></b> <?php if($anni ==1){echo "anno";}else{echo "anni";}?>
         - <b><?php echo $mese; ?></b> <?php if($mese ==1){echo "mese";}else{echo "mesi";}?>
         - <b><?php echo $giorno; ?></b> <?php if($giorno ==1){echo "giorno";}else{echo "giorni";}?>


    </p>
A cosi:
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $a; ?></b> <?php if($datanascita == "0000-00-00"){echo "";}else{if($a ==1){echo "anno";}else{echo "anni";}}?>
         - <b><?php echo $mese; ?></b> <?php if($datanascita == "0000-00-00"){echo "";}else{if($mese ==1){echo "mese";}else{echo "mesi";}}?>
         - <b><?php echo $giorno; ?></b> <?php if($datanascita == "0000-00-00"){echo "";}else{if($giorno ==1){echo "giorno";}else{echo "giorni";}}?>


    </p>
 

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
Nessun dato disponibile deve rimanere :p invece e' sparito e....... sono rimasti anni - mesi - giorni
e al contrario
anche il colore e' scomparso
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Aspetta forse mi sono perso qualcosa. Puoi postare di nuovo il codice completo comprese le ultime modifiche?
 

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
PHP:
<?php // code calcolo eta' fixato by Tommy03 2020.05.20


$datanascita = $row['birthday'];

if($datanascita != "0000-00-00"){

$dateOfBirth = $datanascita;
$today = date("Y-m-d");
$diff = date_diff(date_create($dateOfBirth), date_create($today));



// //ciclo switch

$a = $diff->format('%y');
$mese = $diff->format('%m');
$giorno = $diff->format('%d');

switch($a) {
case $a >= 10 && $a < 30 :
$anni = '<font color="green">' . $a . '</font>';
break;
case $a >= 30 && $a < 40 :
$anni = '<font color="blue">' . $a . '</font>';
break;
case $a >= 40 && $a < 50 :
$anni = '<font color="orange">' . $a . '</font>';
break;
case $a >= 50 :
$anni = '<font color="red">' . $a . '</font>';
break;
default :
$anni = 'No data';
}

}else{
$anni = "Nessun dato disponibile";
$datanascita="";
}

?>
    

<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $anni; ?></b> <?php if($a ==1){echo "anno";}else{echo "anni";}?>
         - <b><?php echo $mese; ?></b> <?php if($mese ==1){echo "mese";}else{echo "mesi";}?>
         - <b><?php echo $giorno; ?></b> <?php if($giorno ==1){echo "giorno";}else{echo "giorni";}?>
 
 
    </p>
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
PHP:
<?php // code calcolo eta' fixato by Tommy03 2020.05.20


$datanascita = $row['birthday'];

if($datanascita != "0000-00-00"){

$dateOfBirth = $datanascita;
$today = date("Y-m-d");
$diff = date_diff(date_create($dateOfBirth), date_create($today));



// //ciclo switch

$a = $diff->format('%y');
$mese = $diff->format('%m');
$giorno = $diff->format('%d');

switch($a) {
case $a >= 10 && $a < 30 :
$anni = '<font color="green">' . $a . '</font>';
break;
case $a >= 30 && $a < 40 :
$anni = '<font color="blue">' . $a . '</font>';
break;
case $a >= 40 && $a < 50 :
$anni = '<font color="orange">' . $a . '</font>';
break;
case $a >= 50 :
$anni = '<font color="red">' . $a . '</font>';
break;
default :
$anni = 'No data';
}

}else{
$anni = "";
$datanascita="Nessun dato disponibile";
}

?>
    

<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;?>
         - <b><?php echo $a; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($a ==1){echo "anno";}else{echo "anni";}}?>
         - <b><?php echo $mese; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($mese ==1){echo "mese";}else{echo "mesi";}}?>
         - <b><?php echo $giorno; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($giorno ==1){echo "giorno";}else{echo "giorni";}}?>


    </p>
 

Alex_70

Utente Attivo
13 Nov 2018
371
14
18
HELL
ci siamo quasi :p
Nessun dato disponibile - - - e' rimasto

scomparso il colore nel campo anno
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Ma "Nessun dato disponibile" vuoi che scompaia? Oppure vuoi che spariscano i "- - -" ma rimanga "Nessun dato disponibile"?
Nel primo caso:
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php  if($datanascita == "Nessun dato disponibile"){echo "";}else{echo $datanascita;}?>
          <b><?php echo $a; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($a ==1){echo "anno - ";}else{echo "anni - ";}}?>
         <b><?php echo $mese; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($mese ==1){echo "mese - ";}else{echo "mesi - ";}}?>
         <b><?php echo $giorno; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($giorno ==1){echo "giorno";}else{echo "giorni";}}?>


    </p>
Nel secondo caso:
PHP:
<p class="bioheading">Birthday</p><p class="biodata"><?php echo $datanascita;}?>
          <b><?php echo $a; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($a ==1){echo "anno - ";}else{echo "anni - ";}}?>
         <b><?php echo $mese; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($mese ==1){echo "mese - ";}else{echo "mesi - ";}}?>
         <b><?php echo $giorno; ?></b> <?php if($datanascita == "Nessun dato disponibile"){echo "";}else{if($giorno ==1){echo "giorno";}else{echo "giorni";}}?>
Prova così
 
Discussioni simili
Autore Titolo Forum Risposte Data
andreas88 Formula Excel calcolo notti totali - Settore Turismo Windows e Software 4
MarcoGrazia Calcolo fra due date con esclusione delle feste PHP 7
M calcolo della velocità MS Access 5
C scelta operazione di calcolo in c++ C/C++ 7
M Problema con php per calcolo costo percentuale PHP 7
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
A [PHP] calcolo numero di ore effettuate PHP 7
M [Javascript] Verifica calcolo prima di fare insert Javascript 13
M [PHP] Visualizzare nell'alert il calcolo PHP 4
maxnegri [PHP]Funzione di calcolo prezzo di una camera in un range di date PHP 62
N [Java] Piccolo jform per calcolo totale da 2 campi i double Java 0
S Creare un foglio di calcolo in html collegandolo a un e-commerce HTML e CSS 7
P [PHP] Calcolo prezzi camera in range di date diverse PHP 11
V calcolo giorno di fine mese ad una seconda data jQuery 0
matteoraggi VPS specifica per calcolo ffmpeg Server Dedicati e VPS 1
M [Javascript] Calcolo sbagliato Javascript 7
Z [PHP] Calcolo giorno PHP 5
S [PHP] Calcolo Rate PHP 2
T [PHP] Calcolo anzianità soggetti [era: Help me :( Esercizio per me impossibile] PHP 9
asevenx [Javascript] aggiungere righe con select da database e calcolo sconto in automatico Javascript 0
Bunz [Javascript] somma orario input + calcolo straordinario Javascript 3
andrea.peo Calcolo differenza fra record attivo e precedente PHP 1
M calcolo iva da valore di un form PHP 2
U calcolo imc Javascript 1
D Creare script per calcolo ore PHP 11
S calcolo php PHP 2
M Calcolo giorni lavorativi tra due date (escluse le feste comandate) PHP 6
E calcolo date feriali Database 6
G Calcolo differenza valori provenienti da una tabella PHP 0
jacobous Calcolo Mediana MS Access 4
felino Quesito matematico: calcolo ore stimate avendo la percentuale. Discussioni Varie 24
S Analysis Service 2005 calcolo incidenza Database 0
scatenato calcolo input PHP 1
A Checkbox da db e calcolo delle variabili Java 1
D calcolo fra date php PHP 2
scatenato aiuto:calcolo automatico dei campi input Javascript 7
M php / mysql calcolo prezzo base preventivo per hotel PHP 34
P Problemi di calcolo tra due date PHP 37
F calcolo percorso google map PHP 0
M [REGIME dei MINIMI] Plusvalenza fuori dal calcolo dei 30.000 euro Leggi, Normative e Fisco 1
filippino Calcolo IVA con javascript Javascript 3
L calcolo distanza tra due punti geografici Sviluppo app per iOS 0
L Calcolo della percentuale PayPal che varia in base al totale. E-Commerce 1
radioButton Qual è la capacita di calcolo di un database? Database 9
N [risolto] Funzione per calcolo età PHP 4
P Risorse di calcolo java Java 1
Emix errore nel calcolo PHP 4
M Importare pagine database pubblico in foglio di calcolo OpenOffice Windows e Software 0
G Aiutino su un calcolo javascript in tempo reale Javascript 15
Emix Doppio form con calcolo variabili PHP 5

Discussioni simili