Seite 1 von 1

Sprachwechsel

Verfasst: Mi 13. Mai 2009, 23:10
von casi1969
Hallo

ich nutze das folgende Modul zum Sprachwechsel in Contenido 4.8.11. Leider werden auch die Sprachen des zweiten Mandanten im Pulldown angezeigt. Was müsste man ändern, damit nur die Sprachen des aktuellen Mandanten angezeigt werden?

Code: Alles auswählen

<?php

// alle activen Sprachen ermitteln
//$query = "SELECT idlang, name FROM con_lang WHERE active=1 ORDER BY idlang";
$query = "SELECT idlang, name FROM con_lang WHERE active=1 ORDER BY name";
// execute query
$db->query($query);

// Listbox erstellen, javascript wird aktiv wenn Wert sich aendert
echo '<select id="lang" name="changeactivelang" onchange="parent.frames.top.location.href = this.value">';

while ( $db->next_record() ) {
   // idlang, name ermitteln
   $c_idlang = $db->f("idlang");
   $c_name = $db->f("name");

   // aktuelle Sprache wird selected
   if ($c_idlang == $lang) {
      $lang_sel = "selected=\"selected\"";
   } else {
      $lang_sel = "";
   }

   // Link fuer das wechseln der Sprache wird in value geschrieben
   echo '
   <option value="front_content.php?client='.$client.'&changelang='.$c_idlang.'&parent='.$parent.'&subid='.$subid.'&idcat='.$idcat.'" '.$lang_sel.'>'.$c_name.'</option>';
}
   echo '
    </select>';

?> 
Freue mich über Tipps!

Re: Sprachwechsel

Verfasst: Do 14. Mai 2009, 06:01
von idea-tec

Code: Alles auswählen

$query = "SELECT a.idlang, b.name FROM ".$cfg['sql']['sqlprefix']."_clients_lang a, ".$cfg['sql']['sqlprefix']."_lang" b WHERE idclient = ".$client." and a.idlang = b.idlang and b.active=1 ORDER BY name";

Re: Sprachwechsel

Verfasst: Do 14. Mai 2009, 08:30
von casi1969
Hallo idea-tec,

vielen Dank für die schnelle Antwort!

Wenn ich Deine Abfrage statt

Code: Alles auswählen

$query = "SELECT idlang, name FROM con_lang WHERE active=1 ORDER BY name";
einbaue bekomme ich im Backend die Meldung
Fehler in Modul. Fehlerquelle: eval()'d code on line 6
und im Frontend nur noch die folgende Fehlermeldung:
Parse error: syntax error, unexpected T_STRING in /is/htdocs/... /www/csp/front_content.php(981) : eval()'d code on line 97
Was passt da noch nicht?

Viele Grüße
Carsten

Re: Sprachwechsel

Verfasst: Do 14. Mai 2009, 08:47
von idea-tec
Da hat sich ein <"> eingeschlichen, wo es nicht hingehört

Code: Alles auswählen

$query = "SELECT a.idlang, b.name FROM ".$cfg['sql']['sqlprefix']."_clients_lang a, ".$cfg['sql']['sqlprefix']."_lang b WHERE idclient = ".$client." and a.idlang = b.idlang and b.active=1 ORDER BY name";
und zwar hier: ..._lang" b WHERE...
SORRY!

Re: Sprachwechsel

Verfasst: Do 14. Mai 2009, 09:01
von casi1969
Vielen Dank!

So läuft das Ding.