Demo

Give it a try
and play around
with ClanSphere
Demo


Answers: 6
Page [1]
itsmeJAY


Rock the board





Posts: 56
# Thread - 2015-03-28 at 12:43 PM
Hi Community,

ich habe die Profilfelder nur einblenden lassen wenn eine Eingabe erfolgt ist und zwar mit:

 
1.
1. / 2. / ... 
 $data['if']['icq'] = strlen($cs_user['users_icq']) > 0;

und in der .tpl Datei halt {if:icq} und {stop:icq}

aber irgendwie will es bei ICQ nicht klappen, bei allen anderen schon.. Wo habe ich den Fehler gemacht? Hier mal der Code:


mods/users/view.php


 
1.
2.
3.
4.
5.
6.
1. / 2. / ... 
   $content cs_html_link('http://www.icq.com/people/' $cs_user['users_icq'],$cs_user['users_icq']);
  if(
in_array('users_icq',$hidden)) {
    
$content = empty($allow) ? '--' cs_html_italic(1) . $content cs_html_italic(0);
  }
  
$data['users']['icq'] = empty($cs_user['users_icq']) ? '--' $content;
$data['if']['icq'] = strlen($cs_user['users_icq']) > 0;


themes/base/users/view.tpl

 
1.
2.
3.
4.
1. / 2. / ... 
   {if:icq}<tr>
    <
td class="leftc">{icon:licq} {lang:icq}</td>
    <
td class="leftb">{users:icq}</td>
  </
tr>{stop:icq}


Bin für jede Hilfe dankbar... Komm da echt nicht weiter - bei allen anderen Felder macht er es! :X

Gruß
Inactive
Deaktiviert

Supporter
Supporter



Posts: 1287
# Answer: 1 - 2015-03-28 at 1:04 PM
Probiers da mal mit:

 
1.
1. / 2. / ... 
 $data['if']['icq'] = !empty($cs_user['users_icq']));


Könnte sein das da irgendjemand die Idee hatte ICQ als Nummer im Datenbank Schema zu speichern.


Inactive
|
itsmeJAY
Thread author


Rock the board





Posts: 56
# Answer: 2 - 2015-03-28 at 1:33 PM
Hi,

klappte nicht ganz, aber die Idee war richtig..

 
1.
1. / 2. / ... 
  $data['if']['icq'] = !empty($cs_user['users_icq']));
hatte ein ) zu viel!

Aber danke Schalla.. Läuft.. =)


Last edit by itsmeJAY at 2015-03-28 at 1:33 PM (1x Edited)
Inactive
|
Deaktiviert

Supporter
Supporter



Posts: 1287
# Answer: 3 - 2015-03-28 at 1:49 PM
Super.


Inactive
|
itsmeJAY
Thread author


Rock the board





Posts: 56
# Answer: 4 - 2015-03-28 at 3:40 PM
Wo war da denn genau der Unterschied? Versuchs bis jetzt nachzuvollziehen, versteh's aber noch nicht :X!


Inactive
|
Deaktiviert

Supporter
Supporter



Posts: 1287
# Answer: 5 - 2015-03-28 at 4:56 PM
empty() is true (also negiert false für den Fall) wenn der Input:
- 0
- null
- false
- [] (leeres Array)

ist.

Das ICQ Feld war vermutlich als integer angelegt mit 0 oder NULL als default, d.h. strlen() war in dem Fall 1 und nicht 0. Empty ist aber weiterhin true, weil es eben 0 oder NULL ist.

Hoffe das erklärt es.

Viele Grüße,
Daniel


Inactive
|
itsmeJAY
Thread author


Rock the board





Posts: 56
# Answer: 6 - 2015-03-28 at 5:10 PM
Vielen Dank Schalla..


Inactive
|
Answers: 6
Page [1]


You must be registered.