sql_allfetsel

La fonction sql_allfetsel() récupère un tableau de l’ensemble des résultats d’une sélection. Elle a les mêmes paramètres que sql_select() et est un raccourcis de la combinaison sql_select() + sql_fetch_all(). Stockant tous les résultats dans un tableau PHP, il faut faire attention à ne pas dépasser la taille mémoire allouée à PHP si l’on traite de volumineux contenus.

Elle possède 9 paramètres :

  1. $select,
  2. $from,
  3. $where,
  4. $groupby,
  5. $orderby,
  6. $limit,
  7. $having,
  8. $serveur,
  9. $option.

La fonction sql_allfetsel() s’utilise comme cela :

  1. $all = sql_allfetsel('colonne', 'table');
  2. // $all[0]['colonne'] est la colonne de la premiere ligne recue

Télécharger

Exemple

Sélectionner tous les couples objet / id_objet liés à un document donné :

  1. if ($liens = sql_allfetsel('objet, id_objet', 'spip_documents_liens', 'id_document=' . intval($id))) {
  2. foreach ($liens as $l) {
  3. // $l['objet'] et $l['id_objet']
  4. }
  5. }

Télécharger

Le plugin « Contact avancé » sélectionne tous les emails des destinataires d’un message comme ceci :

  1. // On recupere a qui ça va etre envoye
  2. $destinataire = _request('destinataire');
  3. if (!is_array($destinataire)) {
  4. $destinataire = array($destinataire);
  5. }
  6. $destinataire = array_map('intval', $destinataire);
  7. $mail = sql_allfetsel('email', 'spip_auteurs', sql_in('id_auteur', $destinataire));

Télécharger

Auteur Matthieu Marcillaud Publié le : Mis à jour : 11/05/10

Traductions : English, français