Boston
ehm kann man das so machen, dass ich eine extrazeile für das alter nehme also das es z.b. soaussieht:
Geburtstag: Birthday
Alter: ALter des users
so das ich denn meinen verifizierungshack mit einbinden kann das dort denn z.b. so steht:
Profil von Boston:
(erstmal das wesentliche Profil)
Userinformationen:
Geburtstag: $bday
Alter: $alter (verifiziert)
wäre das machbar?
[kamui]
Also zu deiner ersten Frage, dass das Alter extra steht.
Suche nach:
code: |
1:
2:
3:
4:
|
<tr align="left">
<td><span class="normalfont"><b>{$lang->items['LANG_MEMBERS_PROFILE_BIRTHDAY']}</b></span></td>
<td><span class="normalfont">$birthday</span></td>
</tr> |
|
Füge
darunter ein:
code: |
1:
2:
3:
4:
|
<tr align="left">
<td><span class="normalfont"><b>Alter:</b></span></td>
<td><span class="normalfont">$alterimprofil</span></td>
</tr> |
|
---
Ich weiß leider nicht von welchem Verifizierzierungshack du sprichst, wenn du mir mal einen Link schickst oder vlt. deine profile.php (per PM) kann ich dir weiterhelfen
Boston
Ja also der Verifizierungshack ist von mir selbst gecodet doch den mag ich aus privaten gründen nicht rausgeben

aber vielen dank für deine schnelle hilfe
Tänzer
Moin.
Also irgendwie funktioniert das Ding bei mir nicht richtig.
Habe die Aktuelle Anleitung genommen aber er errechnet das alter im durchschnitt 2 Wochen zu früh.
Also jemand der noch 15. Jahre alt ist und erst in 2 Wochen B_Day hat, ist jetzt schon 16. und das ist nicht das erstemal.
mFg
Crash75
Zitat: |
Original von svenka
Funktioniert einwandfrei, aber wenn unregistrierte User was schreiben kommt eine Fehlermeldung
Warning: checkdate() expects parameter 3 to be long, string given in /kunden/149987_76227/Testseite/thread.php on line 473
in der Zeile steht:
php: |
1:
|
return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false; |
|
Könnte man das vielleicht ändern? |
Bei mir ist der selbe Fehler, gibt es da schon eine lösung???
Agi
Zitat: |
Original von Crash75
Zitat: |
Original von svenka
Funktioniert einwandfrei, aber wenn unregistrierte User was schreiben kommt eine Fehlermeldung
Warning: checkdate() expects parameter 3 to be long, string given in /kunden/149987_76227/Testseite/thread.php on line 473
in der Zeile steht:
php: |
1:
|
return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false; |
|
Könnte man das vielleicht ändern? |
Bei mir ist der selbe Fehler, gibt es da schon eine lösung??? |
Versuchs mal so:
php: |
1:
2:
|
if ($wbbuserdata['userid'] != 0) return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false;
else return ""; |
|
Ohne Gewähr!
Crash75
Dann wird das Alter im Thread nicht mehr angezeigt. Scheint dann auch nicht wirklich richtig zu sein, aber danke schon mal für die Hilfe.
Vielleicht fällt dir noch was ein.
Danke schön
Tänzer
Moin.
Versuch das:
php: |
1:
2:
3:
4:
|
if ($posts['birthday'] != '') {
$birthday_array = explode("-", $posts['birthday']);
$alteranzeigen = errechnealter($birthday_array[2], $birthday_array[1], $birthday_array[0]);
} |
|
Habe das auch bei mir so, und der Fehler ist weg.
mFg
Crash75
Mal ne blöde frage wo muss das denn hin?
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
/** Alter im Profil - Powered by Martin-Rehberger **/
if (!function_exists("errechnealter")) {
function errechnealter($gebd,$gebm,$geby){
return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false;
}
}
if ($posts['birthday'] != '') {
$birthday_array = explode("-", $posts['birthday']);
$alteranzeigen = errechnealter($birthday_array[2], $birthday_array[1], $birthday_array[0]);
}
|
|
Das ist der Code den ich eingefügt habe, oder habe ich den falsch eingefügt?????
Weil so gehts leider nicht, der fehler ist zwar wech aber das Alter auch?
Crash75
Hat denn keiner eine lösung.... es sieht einfach nicht schön aus!
Hexo
Also ich hab auch das Problem gehabt wie Crash75 (die Fehlermeldung)
Ich hab ein wenig rumgespielt und damit klappt es bei mir:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
|
/* Alter im Tread Anfang*/
/** Alter im Profil - Powered by Martin-Rehberger **/
if (!function_exists("errechnealter")) {
if ($posts['birthday'] != '') {
function errechnealter($gebd,$gebm,$geby){
return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false;
}
}
}
if ($posts['birthday'] != '') {
$birthday_array = explode("-", $posts['birthday']);
if ($posts['birthday'] != "0000-00-00")
$alterimprofil = errechnealter($birthday_array[2], $birthday_array[1], $birthday_array[0]);
}
/*Alter im Thread Ende*/
|
|
Also ich hab die Abfrage jeweils zweimal mit
if ($posts['birthday'] != '') {
}
überprüft... Kann man das so machen, oder ist das Sicherheitstechnisch bedenklich? Oder ist in der Funktion was verkehrt???
Gruß
[kamui]
Funktioniert dein Code denn?
Sicherheitstechnisch bedenklich scheint mir der Code nicht.
Hexo
Ich glaub schon.
Hab mit dem Opera, FireFox und IE gestest und bis jetzt keine Fehlermeldung erhalten. Auch wenn ein Gast was schreibt, kommt keine Fehlermeldung mehr...
Aber Du kannst gerne mal schauen:
www.holyhell.de
Warum muss ich nur zwei mal die Abfrage abfangen?
if ($posts['birthday'] != '') {
}
Warum nicht nur einmal?
Crash75
Danke das war es, bei mir funktioniert es auch!
Hexo
Coole Sache. Dann konnte ich ja mal sogar helfen ;-)
Hexo
Der Hack rechnet irgendwie falsch.
Beispiel bei mir:
Ich werde diesen Monat 28, bin es aber noch nicht. Der Hack zeigt mir im Thread aber an, das ich 28 sei, im Profil steht es aber richtig.
Warum?
[kamui]
Hats du die aktuelle Version?
Da gab es bei mir noch keine Probleme ...
Hexo
Also ich hatte im Profil einen ähnlichen Hack installiert. Hab das aber jetzt mal auf Deinen aktuellen Stand gebracht. Jetzt wird überall das falsche Geburtstag ausgespuckt.
Ich hab in meiner profile.php stehen:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
/* birthday Geändert für Alter im Profil!!!*/
if ($user_info['birthday'] && $user_info['birthday'] != '0000-00-00') {
$birthday_array = explode('-', $user_info['birthday']);
if ($birthday_array[0] == '0000') $birthday = $birthday_array[2].".".$birthday_array[1].".";
else $birthday = $birthday_array[2].".".$birthday_array[1].".".$birthday_array[0];
}
else $birthday = $lang->items['LANG_MEMBERS_PROFILE_NODECLARATION'];
/** Alter im Profil - Powered by Martin-Rehberger **/
function errechnealter($gebd,$gebm,$geby){
return checkdate($gebm,$gebd,$geby) ? (((date("m")-$gebm) < 0) || ((date("d")-$gebd == 0) && (date("d")-$gebd < 0)) ? date("Y")-$geby-1 : date("Y")-$geby): false;
}
if ($birthday != $lang->items['LANG_MEMBERS_PROFILE_NODECLARATION'])
$alterimprofil = errechnealter($birthday_array[2], $birthday_array[1], $birthday_array[0]);
/* birthday Geändert für Alter im Profil!!!*/ |
|
Im Profil.tpl
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
|
<tr align="left">
<td><span class="normalfont"><b>{$lang->items['LANG_MEMBERS_PROFILE_BIRTHDAY']}</b></span></td>
<td><span class="normalfont">$birthday</span></td>
</tr>
<if($alterimprofil!="")><then>
<tr align="left">
<td><span class="normalfont"><b>{$lang->items['LANG_MEMBERS_PROFILE_AGE']}</b></span></td>
<td><span class="normalfont">$alterimprofil {$lang->items['LANG_MEMBERS_PROFILE_AGE_YEAR']}</span></td>
</tr>
</then></if> |
|
Hab das ein wenig angepasst. Finde das schöner, wenns untereinander steht.
In der thread_postbit.tpl hab ich folgendes reingeschrieben:
code: |
1:
2:
3:
4:
5:
6:
7:
|
<!--Alter im Thread Anfang-->
<if($alterimprofil!="")><then>
<span class="smallfont">{$lang->items['LANG_MEMBERS_PROFILE_AGE']} $alterimprofil</span><br />
</then></if>
<!--Alter im Thread ende--> |
|
Ist also im Prinzip alles korrekt eingebaut....
Gruß Hexo
Hexo
Hallo.
Das Problem besteht immer noch.
Das Useralter wird irgendwie falsch berechnet, wenn der Geburtsmonat erreicht wird.
Kann mir da keiner helfen?
Hexo
Also das Falschrechnen besteht immer noch!
Wäre um jede Hilfe dankbar.