Changeset 47955 in spip-zone
- Timestamp:
- May 20, 2011, 9:53:29 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/iterateurs/public/iterateur.php
r44794 r47955 217 217 $menage = true; 218 218 } 219 // traiter {cle IN a,b} ou {valeur !IN a,b} 220 if (preg_match(',^\(\(([\w/]+)(\s+NOT)?\s+IN\s+(\(.*\))\)\)$,', $op, $regs)) { 221 $this->ajouter_filtre($regs[1], 'IN', $regs[3], $regs[2]); 219 // traiter {cle IN a,b} ou {valeur !IN a,b} 220 // prendre en compte le cas particulier de sous-requetes 221 // produites par sql_in quand plus de 255 valeurs passees a IN 222 if (preg_match_all(',\s+IN\s+(\(.*\)),', $op, $s_req)) { 223 $req = ''; 224 foreach($s_req[1] as $key => $val) { 225 $req .= trim($val, '(,)').','; 226 } 227 $req = '(' . rtrim($req, ',') . ')'; 228 } 229 if (preg_match(',^\(\(([\w/]+)(\s+NOT)?\s+IN\s+(\(.*\))\)(?:\s+(AND|OR)\s+\(([\w/]+)(\s+NOT)?\s+IN\s+(\(.*\))\))*\)$,', $op, $regs)) { 230 $this->ajouter_filtre($regs[1], 'IN', strlen($req) ? $req : $regs[3], $regs[2]); 222 231 unset($op); 223 232 }
Note: See TracChangeset
for help on using the changeset viewer.