DE - Allgemeiner SupportProbleme - birthdaymail news addon


18.08.2016, 03:35 - RpR | Volli - Addon-Rookie - 1 Beiträge
Hallo Community,

vielleicht kann mir jemand von euch helfen. Nach jahrelanger Inaktivität habe ich wieder begonnen CS bzw. CS:GO zu spielen und siehe da meine alte Truppe ist noch Online. Allerdings mit einer Homepage die mehr als ungeeignet ist. Da ich früher dem ein oder anderen Clan bei ihren Homepages geholfen habe dachte ich, ich versuch mich mal wieder an Webspell :-) So genug aus meinem Leben zu meiner Frage:

Ich hab das Birthday Addon installiert. Es funktioniert wenn eine Person Geburtstag hat einwandfrei. Allerdings sind wir weit über 70 Member und da kommt es auch mal vor das 2 Member gleichzeitig Geburtstag feiern. Ich hab das ganze dann mit Testaccounts versucht und siehe da die Page ist nicht mehr zu erreichen, änder ich über das Admincenter bei einem Account das Geburtsdatum ist die Page wieder erreichbar, enthält 2 neue News allerdings nur mit dem User bei dem das Geburtsdatum nicht geändert wurde. Ich versuche eigentlich meine Probleme bei php mit ausprobieren zu lösen was auch häufig funktioniert doch bin ich hier am Ende meines Lateins.

Ich hoffe mir kann jemand von euch helfen, außerdem habe ich die Suchfunktion benutzt aber kein vergleichbares Problem gefunden.


Webspell Version: 4.2.5
php Version: 5.3.29

Unten findet ihr den Code der_birthday.php

Grüße

RpR|Volli

[toggle=Code _birthday.php]
Quelltext:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
<?php
/*
##########################################################################
#                                                                        #
#           Version 4       /                        /   /               #
#          -----------__---/__---__------__----__---/---/-               #
#           | /| /  /___) /   ) (_ `   /   ) /___) /   /                 #
#          _|/_|/__(___ _(___/_(__)___/___/_(___ _/___/___               #
#                       Free Content / Management System                 #
#                                   /                                    #
#                                                                        #
#                                                                        #
#   Copyright 2005-2009 by webspell.org                                  #
#                                                                        #
#   visit webSPELL.org, webspell.info to get webSPELL for free           #
#   - Script runs under the GNU GENERAL PUBLIC LICENSE                   #
#   - It's NOT allowed to remove this copyright-tag                      #
#   -- http://www.fsf.org/licensing/licenses/gpl.html                    #
#                                                                        #
#   Code based on WebSPELL Clanpackage (Michael Gruber - webspell.at),   #
#   Far Development by Development Team - webspell.org                   #
#                                                                        #
#   visit webspell.org                                                   #
#                                                                        #
##########################################################################
*/
// Letztes Sendedatum ermitteln     
$get_setting=safe_query("SELECT last_bd_mail FROM ".PREFIX."settings");
$data=mysql_fetch_assoc($get_setting);
$now=time();
$newsID=mysql_insert_id();
// Beim ersten Besuch ausführen
if($data['last_bd_mail']<$now && (date("d",$data['last_bd_mail'])!=date("d"))){
ignore_user_abort(1);
  
// Alle Geburtstagskinder raussuchen
$result = safe_query("SELECT nickname, userID, email, birthday FROM ".PREFIX."user WHERE DAYOFMONTH(birthday)=DAYOFMONTH(NOW()) AND MONTH(birthday)=MONTH(NOW())");
while($row = mysql_fetch_array($result)) { 
// Alter ermitteln
function getAlter($birthday){
$age = explode("-",$birthday);
$alter = date("Y",time())-$age[0];
if (mktime(0,0,0,date("m",time()),date("d",time()),date("Y",time())) < mktime(0,0,0,$age[1],$age[2],date("Y",time())))
$birthday--;
if ($birthday == '0000-00-00'){
$birthday2 = '0'; 
} else { 
$birthday2 = $alter;
}     
return $birthday2;
}
// Variablen
$sql_gb_body=safe_query("SELECT gbmail_betreff, gbmail_nachricht, gbmail_news_body, gbmail_news_headline, gb_news_status, gbmail_status  FROM ".PREFIX."settings");
$gb_body=mysql_fetch_array($sql_gb_body);
$betreff=$gb_body['gbmail_betreff'];
$nachricht=$gb_body['gbmail_nachricht'];
$nickname=$row['nickname'];
$geb_datum=$row['birthday'];
$nickname2='[URL=index.php?site=profile&id='.$row[userID].']'.$row[nickname].'[/URL]';
$gb_news_headline=$gb_body['gbmail_news_headline'];
$gb_news_body=$gb_body['gbmail_news_body'];
$gb_news_status=$gb_body['gb_news_status'];
$gb_mail_status=$gb_body['gbmail_status'];
$gb_news_headline2 = str_replace('#NAME#',$nickname,$gb_news_headline);
$gb_news_headline2 = str_replace('#ALTER#',getAlter($geb_datum),$gb_news_headline2);
$gb_news_body2 = str_replace('#NAME#',$nickname2,$gb_news_body);
$gb_news_body2 = str_replace('#ALTER#',getAlter($geb_datum),$gb_news_body2);
// News schreiben - wenn aktiv
if($gb_news_status==1){     
safe_query("INSERT INTO ".PREFIX."news (date, rubric, poster, saved, published, comments) VALUES ('".time()."', '9999', '1', '1', '1', '2')");
$newsID=mysql_insert_id();
$query = safe_query("SELECT language FROM ".PREFIX."news_contents WHERE newsID = '".$newsID."'");
safe_query("INSERT INTO ".PREFIX."news_contents (newsID, headline, content, language) VALUES ('".$newsID."', '$gb_news_headline2', '$gb_news_body2', 'de')");
$newsID=mysql_insert_id();
safe_query("UPDATE ".PREFIX."news_contents SET 
                      language='de',
                      headline='$gb_news_headline2',
                      content='$gb_news_body2' WHERE newsID = '".$newsID."'");} 
  
// E-Mail Body
$emailbody = '<!--
Hallo!
Dein System unterst&uuml;tzt keine HTML Mails.
Folgende Nachricht ist an Dich gesendet:
$nachricht
 --> 
<html><head>
<style type="text/css">
<!--
.border {border: 1px solid #ffffff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #ffffff; background-color: ABAFBA;}
table { font-family: Verdana, Arial, Helvetica, sans-serif; margin-left: 20px; font-size: 12px; color: #ffffff; }
blockquote { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #ffffff; margin-left:10px; margin-left:10px; margin-top:0px; text-align: justify;}
-->
</style>
</head>
<body style="background-color: rgb(51, 51, 51);">
<table width="474" border="0" align="center" cellpadding="0" cellspacing="0">
<table border="0" cellpadding="0" cellspacing="0" width="474">
    <tr>
        <td width="10%"><img
        src="http://'.$hp_url.'/images/icons/gbmail/gb_header.jpg"
        width="474" height="152"></td>
    </tr>
    <tr>
        <td width="90%" bgcolor="#000000">
        
        <p style="text-align:justify; font-size: 12px; color: #ffffff; margin-left:10px; margin-right:10px">
        <b>'.$betreff.'</b><br><br>Hi '.$nickname.'. '.$nachricht.'<br>
        </p>
        </td>
    </tr>
    <tr>
        <td width="100%"><img
        src="http://'.$hp_url.'/images/icons/gbmail/gb_footer_oben.jpg"
        width="474" height="24"></td>
    </tr>
    <tr>
        <td width="100%" bgcolor="#000000"><blockquote><font color="#FFFFFF"
        size="1"><a href="http://'.$hp_url.'">'.$hp_url.'</a></font></blockquote></td>
    </tr>
    <tr>
        <td width="100%"><img
        src="http://'.$hp_url.'/images/icons/gbmail/gb_footer_unten.jpg"
        width="474" height="15"></td>
    </tr>
</table>
</table>
</body>
</html>'; 
$betreff2 = str_replace('#NAME#',$nickname,$betreff);
$betreff2 = str_replace('#ALTER#',getAlter($geb_datum),$betreff2);
$emailbody2 = str_replace('#NAME#',$nickname,$emailbody);
$emailbody2 = str_replace('#ALTER#',getAlter($geb_datum),$emailbody2);  
$emailbody=stripslashes($emailbody);
$sender      = $admin_email;
$empfaenger  = $row['email'];          
$trenner = md5(uniqid(time()));
$header = "From:$admin_name<$admin_email>
";
$header .= "Reply-To: $admin_email
";
$header .= "Content-Type: text/html";
     
// E-Mail senden - wenn aktiv     
if($gb_mail_status==1){ 
mail($empfaenger, $betreff2, $emailbody2, $header);}
}
// Sendedatum setzen          
safe_query("UPDATE ".PREFIX."settings SET last_bd_mail='".time()."'");
}
?>
[/toggle]

 
29.08.2016, 17:17 - pgene - Administrator - 485 Beiträge
Die Version von hier benutzt? Da sollte der Newsbug gefixt sein.

http://addons-webspell...p?site=files&file=309

http://pgene.deviantart.com