Seite 2 von 2
Verfasst: 27.09.2008 13:20
von z_master
Hallo.
Danke für eure Beiträge. Jedoch konnte ich das Problem trotzdem nicht lösen.
Habe jetzt den Vorschlag von MartectX getestet:
Code: Alles auswählen
<!-- IF postrow.S_PROFILE_GESCHLECHT -->
<td align="center" valign="middle" background="/styles/subsilver2/imageset/{postrow.custom_fields.PROFILE_FIELD_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;">
<!-- ELSE -->
<td align="center" valign="middle">
<!-- ENDIF -->
Das Problem ist, dass der ELSE Befehl total ignoriert wird. Ich verstehe nicht warum?
4seven: Wenn kein Geschlecht angegeben wurde ist der Inhalt nicht 0 sondern NULL. Ein eq = "" hat auch nicht geklappt.
EDIT:
Okay, vergesst es. Das Script des Portals ist fehlerhaft und darum werden alte User nicht immer in phpbb_profile_fields_data angelegt. Darum existiert der Datensatz nicht.
Um das Layout deswegen nicht zu zerschießen, habe ich es nun so gemacht, dass wenn der Datensatz nicht gefunden wurde der ganze Beitrag ausgeblendet wird - so wird das Layout nicht zerschossen. Der Fehler tritt sowieso nur bei inaktiven User von 2005 auf.
Danke für die Hilfe
Gruß, Tom.
Verfasst: 27.09.2008 14:24
von MartectX
z_master hat geschrieben:Code: Alles auswählen
<!-- IF postrow.S_PROFILE_GESCHLECHT -->
<td align="center" valign="middle" background="/styles/subsilver2/imageset/{postrow.custom_fields.PROFILE_FIELD_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;">
<!-- ELSE -->
<td align="center" valign="middle">
<!-- ENDIF -->
Richtig wäre gewesen:
Code: Alles auswählen
<!-- IF postrow.S_PROFILE_GESCHLECHT -->
<td align="center" valign="middle" background="/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;">
<!-- ELSE -->
<td align="center" valign="middle">
<!-- ENDIF -->
Verfasst: 27.09.2008 18:30
von 4seven
4seven: Wenn kein Geschlecht angegeben wurde ist der Inhalt nicht 0 sondern NULL. Ein eq = "" hat auch nicht geklappt.
das mal probiert? ansonsten egal, du hast ja jetzt deine (not)lösung
Code: Alles auswählen
<!-- IF postrow.custom_fields.PROFILE_FIELD_NAME = NULL -->
IRGENDWAS
<!-- ENDIF -->
Code: Alles auswählen
<!-- IF postrow.custom_fields.PROFILE_FIELD_NAME eq NULL -->
IRGENDWAS
<!-- ENDIF -->
Verfasst: 27.09.2008 19:21
von nickvergessen
oder einfach
bzw fürs gegenteil
Code: Alles auswählen
<!-- IF not postrow.custom_fields.PROFILE_FIELD_NAME -->
Verfasst: 27.09.2008 20:34
von 4seven
jup, return to easyness

Verfasst: 27.09.2008 21:19
von z_master
Okay.
Habe es jetzt einmal mit ELSE und einmal so gemacht
Code: Alles auswählen
<!-- IF postrow.S_PROFILE_GESCHLECHT -->
<td align="center" valign="middle" background="/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;">
<!-- ENDIF -->
<!-- IF not postrow.S_PROFILE_GESCHLECHT -->
<td align="center" valign="middle">
<!-- ENDIF -->
Trotzdem wird der Post jetzt wieder komplett ausgeblendet
Siehe:
http://forum.szene1.at/viewtopic.php?f= ... a&start=30
Ganz unten, erkennt man daran, dass 2x hintereinander die gleiche ROW Farbe ist. In der Print-View sieht man den Beitrag, da dort ja das Geschlechts-Bild nicht angezeigt wird:
http://forum.szene1.at/viewtopic.php?f= ... view=print
... aber warum kann man es nicht einfach so machen, dass wenn der Datensatz nicht gefunden wurde, einfach nur das Bild ausgeblendet wird, anstatt alles nicht mehr anzuzeigen?
Merkwürdig, das.
Gruß, Tom.
Verfasst: 27.09.2008 22:28
von MartectX
Versuch' doch mal das hier:
Code: Alles auswählen
<td align="center" valign="middle" <!-- IF postrow.S_PROFILE_GESCHLECHT -->background="/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;"<!-- ENDIF --> >
Repariere außerdem mal Deinen Template-Code, es fehlen für den Anfang die Tags </body> und </html>. Den Hintergrund der Tabellenspalte hast Du auch falsch deklariert, richtig wäre
style="background:url('/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif') no-repeat right top;" (siehe
hier).
Verfasst: 28.09.2008 22:36
von z_master
MartectX hat geschrieben:Repariere außerdem mal Deinen Template-Code, es fehlen für den Anfang die Tags </body> und </html>. Den Hintergrund der Tabellenspalte hast Du auch falsch deklariert, richtig wäre
style="background:url('/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif') no-repeat right top;" (siehe
hier).
Oops, danke. Beides ausgebessert.
MartectX hat geschrieben:
Versuch' doch mal das hier:
Code: Alles auswählen
<td align="center" valign="middle" <!-- IF postrow.S_PROFILE_GESCHLECHT -->background="/styles/subsilver2/imageset/{postrow.PROFILE_GESCHLECHT_VALUE}.gif" STYLE="background-repeat: no-repeat;background-position: right top;"<!-- ENDIF --> >
Selbes Problem (Cache purged und Template refresh)
Gruß, Tom.