/** * Charge le serveur de base de donnees * * Fonction principale. Elle charge l'interface au serveur de base de donnees * via la fonction spip_connect_version qui etablira la connexion au besoin. * Elle retourne la fonction produisant la requete SQL demandee * Erreur fatale si la fonctionnalite est absente sauf si le 3e arg <> false * * @internal Cette fonction de base est appelee par les autres fonctions sql_* * @param string $ins_sql * Instruction de l'API SQL demandee (insertq, update, select...) * @param string $serveur * Nom du connecteur ('' pour celui par defaut a l'installation de SPIP) * @param bool $continue * true pour ne pas generer d'erreur si le serveur SQL ne dispose pas de la fonction demandee * @return string|array * Nom de la fonction a appeler pour l'instruction demandee pour le type de serveur SQL correspondant au fichier de connexion. * Si l'instruction demandee n'existe pas, retourne la liste de toutes les instructions du serveur SQL avec $continue a true. * **/ function sql_serveur($ins_sql = '', $serveur = '', $continue = false) { static $sql_serveur = array(); if (!isset($sql_serveur[$serveur][$ins_sql])) { $f = spip_connect_sql(sql_ABSTRACT_VERSION, $ins_sql, $serveur, $continue); if (!is_string($f) or !$f) { return $f; } $sql_serveur[$serveur][$ins_sql] = $f; } return $sql_serveur[$serveur][$ins_sql]; }
function spip_query($query, $serveur = '') { global $spip_sql_version; $f = spip_connect_sql($spip_sql_version, 'query', $serveur, true); return function_exists($f) ? $f($query, $serveur) : false; }
function sql_serveur($ins_sql='', $serveur='', $continue=false) { return spip_connect_sql(sql_ABSTRACT_VERSION, $ins_sql, $serveur, $continue); }
/** * Exécute une requête sur le serveur SQL * * @see sql_query() * @deprecated Pour compatibilité. Utiliser `sql_query()` ou l'API `sql_*`. * * @param string $query Texte de la requête * @param string $serveur Nom du connecteur pour la base de données * @return bool|mixed * - false si on ne peut pas exécuter la requête * - indéfini sinon. **/ function spip_query($query, $serveur = '') { $f = spip_connect_sql($GLOBALS['spip_sql_version'], 'query', $serveur, true); return function_exists($f) ? $f($query, $serveur) : false; }