Votre signe astrologique chinois

Soyez le premier à donner votre avis sur cette source.

Vue 4 411 fois - Téléchargée 243 fois

Description

la même chose que le signe astrologique

http://www.phpcs.com/codes/VOTRE-SIGNE-ASTROLOGIQUE_52096.aspx

avec une variante de calcul, ça ne marche pas par comparaison, mais un calcul très facile

Source / Exemple :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="FR-fr" dir="ltr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Signe du zodiak</title>
</head>
<style type="text/css">
#age{margin:1% 10%;font-size:90%;font-weight:bold;color:#3E3E3E;}
</style>
<body>
<?php
$mois = Array('Decembre','Janvier','Fevrier','Mars','Avril','Mai','Juin','Juillet','Aout','Septembre','Octore','Novembre','Decembre');
$jour='';$month='';$annee='';

if(isset($_POST['jour'])){
	$jour = $_POST['jour'];
	$month = $_POST['mois'];
	$annee = $_POST['annee'];
	
	$x = (1901 - $annee)%12;
	switch($x){
		case 1 : $signe = "Rat";break;
		case 0 : $signe = "Buffle";break;
		case 11 : $signe = "Tigre";break;
		case 10 : $signe = "Lapin";break;
		case 9 : $signe = "Dragon";break;
		case 8 : $signe = "Serpent";break;
		case 7 : $signe = "Cheval";break;
		case 6 : $signe = "Chèvre";break;
		case 5 : $signe = "Singe";break;
		case 4 : $signe = "Coq";break;
		case 3 : $signe = "Chien";break;
		case 2 : $signe = "Cochon";break;
		
		case -11 : $signe = "Rat";break;
		case 0 : $signe = "Buffle";break;
		case -1 : $signe = "Tigre";break;
		case -2 : $signe = "Lapin";break;
		case -3 : $signe = "Dragon";break;
		case -4 : $signe = "Serpent";break;
		case -5 : $signe = "Cheval";break;
		case -6 : $signe = "Chèvre";break;
		case -7 : $signe = "Singe";break;
		case -8 : $signe = "Coq";break;
		case -9 : $signe = "Chien";break;
		case -10 : $signe = "Cochon";break;
		
	};
	
			

	echo '<div id="age">'.$signe.'</div>';}
?>
<form name="calculeage" method="post" action="astroChinois.php">
<select name="jour">
<?php
	for($a=1;$a<31;$a++){
	$s = $jour==$a ? 'selected' : '';
	echo '<option value="'.$a.'" label="jour" '.$s.'>'.$a.'</option>';
	}
?>
</select>
<select name="mois">
<?php
	for($a=1;$a<13;$a++){
	$s = $month==$a ? 'selected' : '';
	echo '<option value="'.$a.'" label="mois" '.$s.'>'.$mois[$a].'</option>';
	}
?>
</select>
<select name="annee">
<?php
	for($a=1942;$a<2000;$a++){
	$s = $annee==$a ? 'selected' : '';
	echo '<option value="'.$a.'" label="annee" '.$s.'>'.$a.'</option>';
	}
?>
</select>
<input type="submit" value="Mon signe chinois" name="submit">
</form>
</body>
</html>

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
mardi 14 septembre 2004
Statut
Membre
Dernière intervention
20 janvier 2011

Ce script ne fonctionne pas correctement aujourd'hui nous sommes le 25 janvier 2011 et le code nous retourne l'année du Lapin alors que l'année du Tigre n'est pas terminée. Si quelqu'un a un script fonctionnel je suis preneur.
Messages postés
255
Date d'inscription
vendredi 20 avril 2007
Statut
Membre
Dernière intervention
9 août 2013
3
C'est un peu lourd a lire ce switch, tu pourrais utiliser une ternaire. Exemple avec le rat :$x 1 || $x -11 ? $signe = "Rat" : 0; etc.
Messages postés
2
Date d'inscription
jeudi 11 octobre 2007
Statut
Membre
Dernière intervention
16 mai 2011

Salut,
J'ai vu que tu te base uniquement sur l'année de naissance pour déterminé le signe alors que le changement s'effectue entre le 21 janvier et le 20 février (selon la date du nouvel an chinois).
Par conséquent, ton système n'ait valable que pour les personnes nées après le 20 février.
Cependant, le calcul de la date de changement n'est pas évident car basé sur les mois lunaires avec rattrapage certaines années pour correspondre également au cycle solaire.
Messages postés
24
Date d'inscription
samedi 10 janvier 2009
Statut
Membre
Dernière intervention
7 juin 2014

ah oui j'ai zappé ça ; j'ai un peu baclé le travail, dsl.

En fait faut faire for($a=1;$a<32;$a++) ...
Messages postés
3
Date d'inscription
dimanche 17 août 2008
Statut
Membre
Dernière intervention
23 janvier 2011

salut
j'ai vu que tu avais utilisé pour les jour de 1 à 30 mais pour les mois qui font 31 on fait comment?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.