Visa ett inlägg
Oläst 2005-07-24, 14:49 #2
koalas avatar
koala koala är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Sep 2004
Inlägg: 1 154
koala koala är inte uppkopplad
Har WN som tidsfördriv
koalas avatar
 
Reg.datum: Sep 2004
Inlägg: 1 154
Kom på ett alternativt sätt. Följande är åtminstone snyggare att se på:
Kod:
$query = sprintf("SELECT category_id, category_name FROM %s WHERE language_id=%d OR language_id=%d ORDER BY language_id ASC",
  	$DBTABLES['shop']['category_description'],
  	DEFAULT_LANGUAGE,
  	$user->language_id
  );
$result = mysql_query($query);
while ($o = mysql_fetch_object($result)) {
	if (!empty($o->category_name)) {
 $categories[$o->category_id]->category_name = $o->category_name;
	}
}
mysql_free_result($result);
Finns det bättre lösningar?

EDIT: Det här fungerar inte om DEFAULT_LANGUAGE > $user->language_id. Måste komma på något smartare.

EDIT2: Det här fungerar nog alltid:
Kod:
// Category descriptions:
$query = sprintf("(SELECT category_id, category_name FROM %s WHERE language_id=%d) UNION (SELECT category_id, category_name FROM %s WHERE language_id=%d)",
  	$DBTABLES['shop']['category_description'],
  	DEFAULT_LANGUAGE,
  	$DBTABLES['shop']['category_description'],
  	$user->language_id
  );
$result = mysql_query($query) or trigger_error(sprintf("(%d)\n%s\nWhole query:\n%s", mysql_errno(), mysql_error(), $query), E_USER_ERROR);
while ($o = mysql_fetch_object($result)) {
	$categories[$o->category_id]->category_name = $o->category_name;
}
mysql_free_result($result);
Är det en bra lösning?
koala är inte uppkopplad   Svara med citatSvara med citat