voilà mon code pour récupérer les infos
if ( count( $this->topic->custom_fields->out_fields ) )
{
foreach( $this->topic->custom_fields->out_fields as $id => $data )
{
if ( is_array($this->ipsclass->input['field_'.$id]) AND isset($this->ipsclass->input['field_'.$id]) AND $this->ipsclass->input['field_'.$id] )
{
$f = implode( ",", $this->ipsclass->input['field_'.$id]);
}
if ( is_array($this->ipsclass->input['field_'.$id]) AND isset($this->ipsclass->input['field_'.$id]) AND $f != "" )
{
foreach($this->ipsclass->input['field_'.$id] as $st)
{
if ($querry != "") $querry.=" OR ";
$querry .= "p.field_{$id} LIKE '{$st}%'";
}
$query[] = $querry;
$url[] = "field_{$id}=".$this->ipsclass->input['field_'.$id];
}
}
}
Dans cette exemple j'ai selectioner France dans un select multiple et deejay puis producteur dans un autre. Mon souci c'est que mon résultat me donne
Code : Tout sélectionner
"p.field_5 LIKE 'France%' " [2]=> string(54) "p.field_5 LIKE 'France%' OR p.field_2 LIKE 'Deejay%' " [3]=> string(85) "p.field_5 LIKE 'France%' OR p.field_2 LIKE 'Deejay%' OR p.field_2 LIKE 'Producer%' " }Il me renvois plusieurs fois france et deejay par exemple au lieu de me le renvoyer qu'une seule fois. Je me suis appercut que ca venais du 'point' dans mon foreach.
$querry .= "p.field_{$id} LIKE '{$st}%'";
mais si je ne met pas le point je ne recois plus les selection multiple, et me donne comme résultat "France et producteur"...(deejay disparait)L'explication est un peu brouillone désoler j'espere que quelqu'un pourra comprendre et m'aiguiller
Merci.