Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Gimtadienio panele, klaida!

Parašė bruzgis· 2007 Gru. 14 16:12:09
#1

Bėda tokia:

if ($birthdate == $today) {
echo "<table width='100%' cellpadding='0' cellspacing='0'><tr><td><img src='".BASEDIR."images/sugimtadieniu.png'><br><br><center>Pramogauk.net kolektyvas sveikina<br>
<img border='0' alt='".$locale['on106']."' title='".$locale['on106']."' src='".BASEDIR."images/avatars/".$userdata['user_avatar']."'><br>
<b>".$data['user_name']."</b><br>su GIMTADIENIU!!!<br></center></td></tr></table>
";
}


Esant zmogaus gimtadieniui nevykdo viso sito kas paryskinta

Pateikiu visa panele:
openside("Kas naujo?" );
echo "<br><img src='".BASEDIR."images/gimtadieniai.png'><br><br>";

$result=dbquery(
"SELECT user_id, user_name, DATE_FORMAT(user_birthdate, '%d') AS birth_day, EXTRACT(MONTH FROM user_birthdate) AS birth_month ".
"FROM ".$db_prefix."users ".
"WHERE EXTRACT(MONTH FROM user_birthdate)>EXTRACT(MONTH FROM NOW()) OR ".
"(EXTRACT(MONTH FROM user_birthdate)=EXTRACT(MONTH FROM NOW()) AND EXTRACT(DAY FROM user_birthdate)>=EXTRACT(DAY FROM NOW())) ".
"ORDER BY birth_month , birth_day LIMIT 0,5"
);

// Calculate Today's Date
$today = strftime("%b %d");

echo "<table width='100%' cellpadding='0' cellspacing='0'>";
if (dbrows($result) != 0) {
$months = explode("|", $locale['shortmonths']);
while ($data = dbarray($result)) {
$birthdate = $months[$data['birth_month']]." ".$data['birth_day'];
// If It's a Birthday, bold it
if ($birthdate == $today) {
echo "<table width='100%' cellpadding='0' cellspacing='0'><tr><td><img src='".BASEDIR."images/sugimtadieniu.png'><br><br><center>Pramogauk.net kolektyvas sveikina<br>
<img border='0' alt='".$locale['on106']."' title='".$locale['on106']."' src='".BASEDIR."images/avatars/".$userdata['user_avatar']."'><br>
<b>".$data['user_name']."</b><br>su GIMTADIENIU!!!<br></center></td></tr></table>";
}
echo "<table width='100%' cellpadding='0' cellspacing='0'><tr><td width='55%'>
<a href='".BASEDIR."profile.php?lookup=$data[user_id]'>";

echo "$data[user_name]</a></td><td >".$birthdate."</td></tr>";
}
}
echo "</table>";

echo "<br><br><img src='".BASEDIR."images/vardadieniai.png'><br><br>";

?><html>
<script type="text/javascript" src="http://day.lt/dienos_vardadieniai"></script>
</html>
<?
closeside();




Dekui tam kas pades :)

Parašė bruzgis· 2007 Gru. 14 18:12:14
#2

Gal kas turi minciu?

Parašė Ptycka· 2007 Gru. 15 05:12:49
#3

Dabar nelabai smegeninė dirba tu nori kad kiekvienam žmogui kurio gimtadienis ta dieną kad nusiustų PM ar kad panelej kaškas būtu ?

Parašė bruzgis· 2007 Gru. 15 08:12:58
#4

ptycka.. :) labai aiskiai tau parodyta (paryskinta juodai) kas turi ivykt jei $birthday == $today :)

jei neiziurejai tai pakopinu:
<table width='100%' cellpadding='0' cellspacing='0'><tr><td><img src='".BASEDIR."images/sugimtadieniu.png'><br><br><center>Pramogauk.net kolektyvas sveikina<br>
<img border='0' alt='".$locale['on106']."' title='".$locale['on106']."' src='".BASEDIR."images/avatars/".$userdata['user_avatar']."'><br>
<b>".$data['user_name']."</b><br>su GIMTADIENIU!!!<br></center></td></tr></table>



Parašė Ptycka· 2007 Gru. 15 09:12:29
#5

Na bandžiau ant savo hosto irgi bet kaskodel neivygdo komandos...
Isties man taipogi praverstu tokia panelė gal kas iš rimtesnių adminų padėti galyt ;)

Parašė bruzgis· 2007 Gru. 15 11:12:01
#6

Manau sitas dalykas nesutampa
$birthdate = $months[$data['birth_month']]." ".$data['birth_day'];
su situ dalyku:
$today = strftime("%b %d");

kodel nesutampa? ogi gal tarpu daugiau, gal kas nors dar netaip pat ir iskarto brithday nelygu today :)
gal nusisneku, bet speliot gi galima :D

Redagavo ozzWANTED· 2007 Gru. 15 15:12:53

Parašė ozzWANTED· 2007 Gru. 15 15:12:08
#7

$months = explode("|", $locale['shortmonths']);
while ($data = dbarray($result)) {
$birthdate = $months[$data['birth_month']]." ".$data['birth_day'];

WTF?
Šiaip jeigu yra value pvz. 1990|01|01;
tai $birthdate explodinamas taip:
$ready = explode("|", $info['fulldate']);
$year = $ready['0'];
$month = $ready['1'];
$day = $ready['2'];
$birthdate = $year-$month-$day;
variable'as variable gali būti tik iš array sekos.

O jeigu nori tik pvz. pakeisti ženklus "|" į "-" iš gimtadienio dbvalue'o, tada tada išvis užtenka:
$newdateformat = str_replace('|', '-', $data['olddateformat']);



Parašė bruzgis· 2007 Gru. 21 20:12:38
#8

Dekui ;)