Skip to content
Extraits de code Groupes Projets
Valider 6ad9b8a3 rédigé par esj's avatar esj
Parcourir les fichiers

On fait passer le trancheur par 255 de sql_in dans le pot commun:

- ca evite les chargements automatiques foireux
- ca servira pour les autres portages.
Mais faudra penser à renommer.
parent 1339e1c4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -123,4 +123,28 @@ $select, $from, $where, $groupby, $orderby, $limit, ...@@ -123,4 +123,28 @@ $select, $from, $where, $groupby, $orderby, $limit,
$sousrequete, $cpt, $table, $id, $serveur), $sousrequete, $cpt, $table, $id, $serveur),
$serveur); $serveur);
} }
//
// IN (...) est limite a 255 elements, d'ou cette fonction assistante
//
function calcul_mysql_in($val, $valeurs, $not='') {
if (!$valeurs) return ($not ? "0=0" : '0=1');
$n = $i = 0;
$in_sql ="";
while ($n = strpos($valeurs, ',', $n+1)) {
if ((++$i) >= 255) {
$in_sql .= "($val $not IN (" .
substr($valeurs, 0, $n) .
"))\n" .
($not ? "AND\t" : "OR\t");
$valeurs = substr($valeurs, $n+1);
$i = $n = 0;
}
}
$in_sql .= "($val $not IN ($valeurs))";
return "($in_sql)";
}
?> ?>
...@@ -291,30 +291,6 @@ function spip_mysql_version() { ...@@ -291,30 +291,6 @@ function spip_mysql_version() {
return ($row['n']); return ($row['n']);
} }
//
// IN (...) est limite a 255 elements, d'ou cette fonction assistante
//
function calcul_mysql_in($val, $valeurs, $not='') {
if (!$valeurs) return ($not ? "0=0" : '0=1');
$n = $i = 0;
$in_sql ="";
while ($n = strpos($valeurs, ',', $n+1)) {
if ((++$i) >= 255) {
$in_sql .= "($val $not IN (" .
substr($valeurs, 0, $n) .
"))\n" .
($not ? "AND\t" : "OR\t");
$valeurs = substr($valeurs, $n+1);
$i = $n = 0;
}
}
$in_sql .= "($val $not IN ($valeurs))";
return "($in_sql)";
}
function creer_objet_multi ($objet, $lang) { function creer_objet_multi ($objet, $lang) {
$retour = "(TRIM(IF(INSTR(".$objet.", '<multi>') = 0 , ". $retour = "(TRIM(IF(INSTR(".$objet.", '<multi>') = 0 , ".
" TRIM(".$objet."), ". " TRIM(".$objet."), ".
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter