Извеждане на зодия

nom3r1

Registered
Добър вечер,
имам един малко тъп въпрос. Имам код, с който извеждам на даден потребител каква му е зодията. Та, вместо да го въвеждам този код във всяка страница се чудех, кой ще е най-удачния начин, да взимам на дадения потребител дата на раждане и да я вкарвам във функция, след което във файла да изкарам неговата зодия?

С други думи имам примерни файлове:
- members.php
- profile.php

Идеята е следната. Имам заявка в тези два файла по-горе, която е;
Код:
$query = mysql_query("SELECT * FROM `users` ORDER BY username DESC") or die (mysql_error());
    while ($row = mysql_fetch_array($query)) {
        $d= $row['d'];
        $m= $row['m'];
        $y= $row['y'];
echo "дата: $d  месец: $m година: $y";
}

Сега за да изкарвам зодията аз всичко го правя по следния начин:
Код:
$query = mysql_query("SELECT * FROM `users` ORDER BY username DESC") or die (mysql_error());
    while ($row = mysql_fetch_array($query)) {
        $d= $row['d'];
        $m= $row['m'];
        $y= $row['y'];
  if (($d >= 22 && $m == 12) || ($d <= 20 && $m == 1)) { $zodiq = "Козирог"; }
    elseif (($d >= 21 && $m == 1) || ($d <= 19 && $m == 2)) { $zodiq = "Водолей"; }
    elseif (($d >= 20 && $m == 2) || ($d <= 21 && $m == 3)) { $zodiq = "Риби"; }
    elseif (($d >= 22 && $m == 3) || ($d <= 21 && $m == 4)) { $zodiq = "Овен"; }
    elseif (($d >= 22 && $m == 4) || ($d <= 22 && $m == 5)) { $zodiq = "Телец"; }
    elseif (($d >= 23 && $m == 5) || ($d <= 21 && $m == 6)) { $zodiq = "Близнаци"; }
    elseif (($d >= 22 && $m == 6) || ($d <= 22 && $m == 7)) { $zodiq = "Рак"; }
    elseif (($d >= 23 && $m == 7) || ($d <= 22 && $m == 8)) { $zodiq = "Лъв"; }
    elseif (($d >= 23 && $m == 8) || ($d <= 22 && $m == 9)) { $zodiq = "Дева"; }
    elseif (($d >= 23 && $m == 9) || ($d <= 22 && $m == 10)) { $zodiq = "Везни"; }
    elseif (($d >= 23 && $m == 10) || ($d <= 22 && $m == 11)) { $zodiq = "Скорпион"; }
    elseif (($d >= 23 && $m == 11) || ($d <= 21 && $m == 12)) { $zodiq = "Стрелец"; }
echo "дата: $d  месец: $m година: $y <br /> $zodiq";
}


Просто вместо във всеки файл, се чудя как да направя в един файл functions.php да имам кода за зодията и да си правя проверката, след което с една функция или променлива да извадя зодията на потребителя? Надявам се да сте ме разбрали

Код:
    if (($d >= 22 && $m == 12) || ($d <= 20 && $m == 1)) { $zodiq = "Козирог"; }
    elseif (($d >= 21 && $m == 1) || ($d <= 19 && $m == 2)) { $zodiq = "Водолей"; }
    elseif (($d >= 20 && $m == 2) || ($d <= 21 && $m == 3)) { $zodiq = "Риби"; }
    elseif (($d >= 22 && $m == 3) || ($d <= 21 && $m == 4)) { $zodiq = "Овен"; }
    elseif (($d >= 22 && $m == 4) || ($d <= 22 && $m == 5)) { $zodiq = "Телец"; }
    elseif (($d >= 23 && $m == 5) || ($d <= 21 && $m == 6)) { $zodiq = "Близнаци"; }
    elseif (($d >= 22 && $m == 6) || ($d <= 22 && $m == 7)) { $zodiq = "Рак"; }
    elseif (($d >= 23 && $m == 7) || ($d <= 22 && $m == 8)) { $zodiq = "Лъв"; }
    elseif (($d >= 23 && $m == 8) || ($d <= 22 && $m == 9)) { $zodiq = "Дева"; }
    elseif (($d >= 23 && $m == 9) || ($d <= 22 && $m == 10)) { $zodiq = "Везни"; }
    elseif (($d >= 23 && $m == 10) || ($d <= 22 && $m == 11)) { $zodiq = "Скорпион"; }
    elseif (($d >= 23 && $m == 11) || ($d <= 21 && $m == 12)) { $zodiq = "Стрелец"; }
 
правиш функция в този файл с кода ето така
на страницата където ще се появяват нещата пишеш заявката, и след него удряш функцията
Код:
	 $query = mysql_query("SELECT * FROM `users` ORDER BY username DESC") or die (mysql_error());
    while ($row = mysql_fetch_array($query)) {
        $d= $row['d'];
        $m= $row['m'];
        $y= $row['y']; 
zodiq($d, $m, y); // това е функцията предполагам ме разбираш слагаш го където искаш да се появи резултата

файла с функцията който си инклуднал по горе в страницата правиш самата функция
Код:
function zodiq($d, $m, y){
   if (($d >= 22 && $m == 12) || ($d <= 20 && $m == 1)) { $zodiq = "Козирог"; }
    elseif (($d >= 21 && $m == 1) || ($d <= 19 && $m == 2)) { $zodiq = "Водолей"; }
    elseif (($d >= 20 && $m == 2) || ($d <= 21 && $m == 3)) { $zodiq = "Риби"; }
    elseif (($d >= 22 && $m == 3) || ($d <= 21 && $m == 4)) { $zodiq = "Овен"; }
    elseif (($d >= 22 && $m == 4) || ($d <= 22 && $m == 5)) { $zodiq = "Телец"; }
    elseif (($d >= 23 && $m == 5) || ($d <= 21 && $m == 6)) { $zodiq = "Близнаци"; }
    elseif (($d >= 22 && $m == 6) || ($d <= 22 && $m == 7)) { $zodiq = "Рак"; }
    elseif (($d >= 23 && $m == 7) || ($d <= 22 && $m == 8)) { $zodiq = "Лъв"; }
    elseif (($d >= 23 && $m == 8) || ($d <= 22 && $m == 9)) { $zodiq = "Дева"; }
    elseif (($d >= 23 && $m == 9) || ($d <= 22 && $m == 10)) { $zodiq = "Везни"; }
    elseif (($d >= 23 && $m == 10) || ($d <= 22 && $m == 11)) { $zodiq = "Скорпион"; }
    elseif (($d >= 23 && $m == 11) || ($d <= 21 && $m == 12)) { $zodiq = "Стрелец"; } 
echo $zodiq;
}
 
Защо просто не направиш при регистрация да се изпълни този код и да запише в базаданни зодията? И после само да я изкарваш.
 

Back
Горе