| @@ 1213-1232 (lines=20) @@ | ||
| 1210 | ||
| 1211 | // renvoie des 'nom AS alias' |
|
| 1212 | // http://doc.spip.org/@_sqlite_calculer_select_as |
|
| 1213 | function _sqlite_calculer_select_as($args){ |
|
| 1214 | $res = ''; |
|
| 1215 | foreach($args as $k => $v) { |
|
| 1216 | if (substr($k,-1)=='@') { |
|
| 1217 | // c'est une jointure qui se refere au from precedent |
|
| 1218 | // pas de virgule |
|
| 1219 | $res .= ' ' . $v ; |
|
| 1220 | } |
|
| 1221 | else { |
|
| 1222 | if (!is_numeric($k)) { |
|
| 1223 | $p = strpos($v, " "); |
|
| 1224 | if ($p) |
|
| 1225 | $v = substr($v,0,$p) . " AS '$k'" . substr($v,$p); |
|
| 1226 | else $v .= " AS '$k'"; |
|
| 1227 | } |
|
| 1228 | $res .= ', ' . $v ; |
|
| 1229 | } |
|
| 1230 | } |
|
| 1231 | return substr($res,2) . $join; |
|
| 1232 | } |
|
| 1233 | ||
| 1234 | ||
| 1235 | // renvoie les bonnes parentheses pour des where imbriquees |
|
| @@ 444-465 (lines=22) @@ | ||
| 441 | * @param array $args |
|
| 442 | * @return string Sélection de colonnes pour une clause SELECT |
|
| 443 | */ |
|
| 444 | function spip_mysql_select_as($args) |
|
| 445 | { |
|
| 446 | $res = ''; |
|
| 447 | foreach($args as $k => $v) { |
|
| 448 | if (substr($k,-1)=='@') { |
|
| 449 | // c'est une jointure qui se refere au from precedent |
|
| 450 | // pas de virgule |
|
| 451 | $res .= ' ' . $v ; |
|
| 452 | } |
|
| 453 | else { |
|
| 454 | if (!is_numeric($k)) { |
|
| 455 | $p = strpos($v, " "); |
|
| 456 | if ($p) |
|
| 457 | $v = substr($v,0,$p) . " AS `$k`" . substr($v,$p); |
|
| 458 | else $v .= " AS `$k`"; |
|
| 459 | } |
|
| 460 | $res .= ', ' . $v ; |
|
| 461 | } |
|
| 462 | } |
|
| 463 | return substr($res,2); |
|
| 464 | } |
|
| 465 | ||
| 466 | ||
| 467 | /** |
|
| 468 | * Changer les noms des tables ($table_prefix) |
|