Seite 1 von 1
Ränge
Verfasst: 12.01.2004 19:47
von suter
Ich bin zwar kein totaler php Newbie aber der Forumcode ist mir doch zu hoch.
Wenn jemand einen Sonderrang hat, wird kein Postingrang angezeigt, ich will aber, dass dies auch angezeigt wird.
Ich denke mal ein <br> und nachher noch den Postingrang hinzufügen und fertig sollte es sein. Aber da hier tonneweise arrays verwendet werden, kapiere ich gar nichts:
Code: Alles auswählen
if ( $postrow[$i]['user_id'] == ANONYMOUS )
{
}
else if ( $postrow[$i]['user_rank'] )
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_rank'] == $ranksrow[$j]['rank_id'] && $ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
}
else
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
}
Kann mir jemand den Code erklären oder sagen wo ich was ändern muss mit einer Erklärung?
Danke schon im voraus!
Verfasst: 13.01.2004 08:21
von suter
Weiss niemand ne Lösung? Wo könnte ich sonst noch fragen?
Verfasst: 13.01.2004 19:54
von suter
Sorry für den erneuten Post aber sonst wird dieser Thread nicht gelesen...
Verfasst: 14.01.2004 13:42
von Saber_Rider
Ich gehe mal davon aus, dass das obere die Berechnung des Spezial Rank ist und das untere die des normalen Ranks.
Also versuch mal das
Code: Alles auswählen
if ( $postrow[$i]['user_id'] == ANONYMOUS )
{
}
else if ( $postrow[$i]['user_rank'] )
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_rank'] == $ranksrow[$j]['rank_id'] && $ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'] . "<br />";
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank .= $ranksrow[$j]['rank_title'];
}
}
}
else
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
}
Hab jetzt keinen Plan ob das funktioniert, aber ausprobieren kannst es ja mal.
Theoretisch schaut es dann so aus:
Special Rank
Poster Rank
Special Rank Image
oder kommt das image zuerst? keine Ahnung.
Gruß, Saber_Rider
Verfasst: 14.01.2004 13:57
von ChriChra
Ich weiß es auch nicht so genau, aber ich denke du solltest
weglassen....
Aber auf jeden würde ich das <br /> erst dann in die Variable aufnehmen, wenn auch die bedinungen erfüllt sind, sonst kommt es evtl. ganz dumm und du hast dann unter dem Spaezialrang ne leehre Zeile.
Also:
Code: Alles auswählen
if ( $postrow[$i]['user_id'] == ANONYMOUS )
{
}
else if ( $postrow[$i]['user_rank'] )
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_rank'] == $ranksrow[$j]['rank_id'] && $ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank .= "<br />" . $ranksrow[$j]['rank_title'];
}
}
}
else
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
}
Versuch mal was von beiden besser funzt.

Verfasst: 15.01.2004 16:10
von suter
Keine von euren Antworten funktioniert.
Die von ChriChra, da passierts irgendwie gar nichts.
Bei der von Saber_Rider listet es alle Ränge auf die ich bis jetzt erreicht habe.
Verfasst: 16.01.2004 23:25
von Saber_Rider
OK, durch den Punkt hängt er immer dran. Das mit dem br bei ChriChra war richtig. Hab es also jetzt so abgeändert, dass es nur noch den höchsten anzeigt. Es muss einfach noch überprüfen ob der nächsthöchste Rang auch schon erreicht ist. Es wird also erst der genommen wo es keinen mehr gibt der drüber ist. Was passiert wenn ein User den höchsten Rang hat weiß ich net. Aber sollte es dann Probleme machen empfehle ich dir einfach einen Rang mit 1000000 Posts einzubauen.
Neuer
Code: Alles auswählen
if ( $postrow[$i]['user_id'] == ANONYMOUS )
{
}
else if ( $postrow[$i]['user_rank'] )
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_rank'] == $ranksrow[$j]['rank_id'] && $ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] && ($postrow[$i+1]['user_posts'] < $ranksrow[$j]['rank_min']) )
{
$poster_rank .= "<br />" . $ranksrow[$j]['rank_title'];
}
}
}
else
{
for($j = 0; $j < count($ranksrow); $j++)
{
if ( $postrow[$i]['user_posts'] >= $ranksrow[$j]['rank_min'] && !$ranksrow[$j]['rank_special'] )
{
$poster_rank = $ranksrow[$j]['rank_title'];
$rank_image = ( $ranksrow[$j]['rank_image'] ) ? '<img src="' . $ranksrow[$j]['rank_image'] . '" alt="' . $poster_rank . '" title="' . $poster_rank . '" border="0" /><br />' : '';
}
}
}
Gruß, Saber_Rider