本文整理汇总了PHP中sql_quote函数的典型用法代码示例。如果您正苦于以下问题:PHP sql_quote函数的具体用法?PHP sql_quote怎么用?PHP sql_quote使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了sql_quote函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action_editer_depot_dist
/**
* Action de mise à jour des descriptions d'un dépot
*
* @return array
* Liste identifiant du dépot, texte d'erreur éventuel
**/
function action_editer_depot_dist()
{
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
// Verification des autorisations
if (!autoriser('webmestre')) {
include_spip('inc/minipres');
echo minipres();
exit;
}
// Le depot n'est jamais cree par une edition mais via le formulaire ajouter_depot
// On est toujours en presence d'une mise a jour pour cette action, l'id_depot
// doit donc etre renseigne sinon c'est une erreur
if ($id_depot = intval($arg)) {
// On teste si l'auteur est connecte. Si non on renvoie sur le formulaire login
$id_auteur = $GLOBALS['visiteur_session']['id_auteur'];
if (!$id_auteur) {
include_spip('inc/headers');
redirige_url_ecrire();
}
// On met a jour le depot avec les saisies
if (sql_updateq('spip_depots', array('titre' => _request('titre'), 'descriptif' => _request('descriptif'), 'type' => _request('type')), 'id_depot=' . sql_quote($id_depot))) {
}
// Enregistre l'envoi dans la BD
// Dans le cas du depot rien n'est fait actuellement, on garde cette fonction
// par souci de coherence avec les autres editions d'objet et pour usage futur
$err = depots_set($id_depot);
if (!$err) {
spip_log("ACTION MODIFIER DEPOT (manuel) : id_depot = " . $id_depot, 'svp_actions.' . _LOG_INFO);
}
}
return array($id_depot, $err);
}
示例2: action_factures_export_csv_mensuel_dist
function action_factures_export_csv_mensuel_dist()
{
$securiser_action = charger_fonction("securiser_action", "inc");
$date = $securiser_action();
$t = strtotime($date);
$date_debut = date('Y-m-01 00:00:00', $t);
$t = strtotime('+1 month', strtotime($date_debut));
$t = strtotime('+5 day', $t);
$date_fin = date('Y-m-01 00:00:00', $t);
$entetes = array('ID', 'Date', 'No', 'Client', 'HT', 'TTC', 'Paye', 'Date paiement', 'Commande');
$factures = sql_allfetsel("id_facture,date,no_comptable,id_auteur,montant_ht,montant,montant_regle,date_paiement", "spip_factures", "date>=" . sql_quote($date_debut) . " AND date<" . sql_quote($date_fin), '', 'id_facture');
foreach ($factures as $k => $facture) {
$factures[$k]['date'] = date('d/m/Y', strtotime($facture['date']));
$factures[$k]['date_paiement'] = date('d/m/Y', strtotime($facture['date_paiement']));
$nom = sql_getfetsel('nom', 'spip_auteurs', 'id_auteur=' . intval($facture['id_auteur']));
$factures[$k]['id_auteur'] = trim($nom . " #" . $facture['id_auteur']);
$factures[$k]['commande'] = '';
if ($trans = sql_fetsel("*", "spip_transactions", "id_facture=" . intval($facture['id_facture'])) and $id_commande = intval($trans['id_commande'])) {
$reference = sql_getfetsel('reference', 'spip_commandes', 'id_commande=' . intval($id_commande));
$factures[$k]['commande'] = trim($reference . " #" . $trans['id_commande']);
}
}
$factures = array_map('array_values', $factures);
$nom = $GLOBALS['meta']['nom_site'] . ' Factures ' . date('Y-m');
$exporter_csv = charger_fonction('exporter_csv', 'inc');
$exporter_csv($nom, $factures, ',', $entetes, true);
}
示例3: roles_auteurs_vider_tables
/**
* Fonction de désinstallation du plugin.
**/
function roles_auteurs_vider_tables($nom_meta_base_version) {
// tant qu'il existe des doublons, on supprime une ligne doublonnée
// sinon on ne pourra pas modifier la cle primaire ensuite
// cet algo est certainement a optimiser
while ($doublons = sql_allfetsel(
array('id_auteur', 'id_objet', 'objet', 'role'),
array('spip_auteurs_liens'),
'', 'id_auteur,id_objet,objet', '', '', 'COUNT(*) > 1'))
{
foreach ($doublons as $d) {
$where = array();
foreach ($d as $cle=>$valeur) {
$where[] = "$cle=".sql_quote($valeur);
}
sql_delete('spip_auteurs_liens', $where);
}
}
// supprimer la clé primaire, la colonne rôle, et remettre l'ancienne clé primaire
sql_alter("TABLE spip_auteurs_liens DROP PRIMARY KEY");
sql_alter("TABLE spip_auteurs_liens DROP COLUMN role");
sql_alter("TABLE spip_auteurs_liens ADD PRIMARY KEY (id_auteur,id_objet,objet)");
effacer_meta($nom_meta_base_version);
}
示例4: action_clevermail_list_subscriber_remove_dist
function action_clevermail_list_subscriber_remove_dist()
{
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$lsr_id = $arg;
if (sql_countsel("spip_cm_lists_subscribers", "lsr_id=" . sql_quote($lsr_id)) == 1) {
include_spip('inc/autoriser');
if (autoriser('supprimer', 'cm_list_subscriber', sql_quote($lsr_id))) {
$abonnement = sql_fetsel("sub_id, lst_id", "spip_cm_lists_subscribers", "lsr_id=" . sql_quote($lsr_id));
$abonne = sql_getfetsel("sub_email", "spip_cm_subscribers", "sub_id=" . intval($abonnement['sub_id']));
$liste = sql_fetsel("lst_moderator_email, lst_name", "spip_cm_lists", "lst_id=" . intval($abonnement['lst_id']));
sql_delete("spip_cm_lists_subscribers", "lsr_id = " . sql_quote($lsr_id));
sql_delete("spip_cm_posts_queued", "sub_id = " . intval($abonnement['sub_id']));
if (sql_countsel("spip_cm_lists_subscribers", "sub_id=" . intval($abonnement['sub_id'])) == 0) {
// No more subscription, subscriber address is removed
sql_delete("spip_cm_pending", "sub_id = " . intval($abonnement['sub_id']));
sql_updateq("spip_cm_subscribers", array('sub_email' => md5($abonne) . '@example.com'), "sub_id = " . intval($abonnement['sub_id']));
}
$destinataire = $liste['lst_moderator_email'];
$sujet = '[' . $liste['lst_name'] . '] Désinscription de ' . addslashes($abonne);
$corps = _T('clevermail:mail_info_desinscription_corps', array('nom_site' => $GLOBALS['meta']['nom_site'], 'url_site' => $GLOBALS['meta']['adresse_site'], 'sub_email' => addslashes($abonne), 'lst_name' => $liste['lst_name']));
$expediteur = sql_getfetsel("set_value", "spip_cm_settings", "set_name='CM_MAIL_FROM'");
$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
if ($envoyer_mail($destinataire, $sujet, $corps, $expediteur)) {
spip_log('Envoie du mail OK', 'clevermail');
} else {
spip_log('Envoie du mail KO', 'clevermail');
}
spip_log('Suppression de l\'abonnement de « ' . $abonne . ' » à la liste « ' . $liste['lst_name'] . ' » (id=' . $abonnement['lst_id'] . ')', 'clevermail');
}
}
}
示例5: action_spiplistes_liste_des_abonnes_dist
function action_spiplistes_liste_des_abonnes_dist () {
include_spip('inc/autoriser');
include_spip('inc/spiplistes_api');
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
if(!preg_match(",^(\d+) (\d+) (\S+)$,", $arg, $r)) {
spiplistes_log("action_spiplistes_liste_des_abonnes_dist $arg pas compris");
return;
}
$id_liste = intval($r[1]);
$debut = intval($r[2]);
$tri = $r[3];
$redirect = rawurldecode(_request('redirect'));
$statut_liste = ($id_liste > 0)
? sql_getfetsel('statut', 'spip_listes', "id_liste=".sql_quote($id_liste), '', '', 1)
: false
;
echo(spiplistes_listes_boite_abonnes ($id_liste, $statut_liste, $tri, $debut, $redirect));
exit(0);
} //
示例6: auth_ldap_dist
function auth_ldap_dist($login, $pass, $serveur = '', $phpauth = false)
{
#spip_log("ldap $login " . ($pass ? "mdp fourni" : "mdp absent"));
// Utilisateur connu ?
// si http auth, inutile de reauthentifier: cela
// ne marchera pas avec auth http autre que basic.
$checkpass = isset($_SERVER["REMOTE_USER"]) ? false : true;
if (!($dn = auth_ldap_search($login, $pass, $checkpass, $serveur))) {
return array();
}
$credentials_ldap = array('ldap_dn' => $dn, 'ldap_password' => $pass);
// Si l'utilisateur figure deja dans la base, y recuperer les infos
$r = sql_fetsel("*", "spip_auteurs", "login=" . sql_quote($login) . " AND source='ldap'", '', '', '', '', $serveur);
if ($r) {
return array_merge($r, $credentials_ldap);
}
// sinon importer les infos depuis LDAP,
if ($GLOBALS['meta']["ldap_statut_import"] and $desc = auth_ldap_retrouver($dn, array(), $serveur)) {
// rajouter le statut indique a l'install
$desc['statut'] = $GLOBALS['meta']["ldap_statut_import"];
$desc['login'] = $login;
$desc['source'] = 'ldap';
$desc['pass'] = '';
$r = sql_insertq('spip_auteurs', $desc, '', $serveur);
}
if ($r) {
return array_merge($credentials_ldap, sql_fetsel("*", "spip_auteurs", "id_auteur=" . intval($r), '', '', '', '', $serveur));
}
// sinon echec
spip_log("Creation de l'auteur '{$login}' impossible");
return array();
}
示例7: action_clevermail_list_subscriber_clear_dist
function action_clevermail_list_subscriber_clear_dist()
{
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
if (sql_countsel("spip_cm_lists_subscribers AS list, spip_cm_subscribers AS sub", "list.sub_id = sub.sub_id AND sub.sub_email LIKE '%@example.com'")) {
$subscribers = sql_select("sub.sub_id", "spip_cm_lists_subscribers AS list, spip_cm_subscribers AS sub", "list.sub_id = sub.sub_id AND sub.sub_email LIKE '%@example.com'", "list.sub_id", "", "");
$sub_deleted = "";
while ($subscriber = sql_fetch($subscribers)) {
sql_delete("spip_cm_lists_subscribers", "sub_id = " . intval($subscriber['sub_id']));
sql_delete("spip_cm_pending", "sub_id = " . intval($subscriber['sub_id']));
$sub_deleted = $sub_deleted . ' ' . intval($subscriber['sub_id']);
}
spip_log('Suppression des abonnements ' . $sub_deleted, 'clevermail');
} else {
spip_log('Il n\'y a pas d\'abonnement à supprimer', 'clevermail');
}
if (sql_countsel("spip_cm_lists_subscribers", "", "lsr_id", "count(lsr_id) > 1") > 1) {
$doublons = sql_select("lsr_id", "spip_cm_lists_subscribers", "", "lsr_id", "", "", "count(lsr_id) > 1");
while ($doublon = sql_fetch($doublons)) {
$lists = sql_select("lst_id, sub_id", "spip_cm_lists_subscribers", "lsr_id ='" . $doublon['lsr_id'] . "'");
while ($list = sql_fetch($lists)) {
sql_updateq("spip_cm_lists_subscribers", array('lsr_id' => md5('subscribe#' . intval($list['lst_id']) . '#' . intval($list['sub_id']) . '#' . time())), "lst_id=" . sql_quote($list['lst_id']) . " AND sub_id=" . sql_quote($list['sub_id']));
}
}
}
//Récupération du timestamp du mois dernier
$today = time();
$date_today = date("d:m:Y", $today);
$today_exploded = explode(":", $date_today);
$mois = (int) $today_exploded[1];
$mois = --$mois;
$valid_date = mktime(0, 0, 0, $mois, $today_exploded[0], $today_exploded[2]);
sql_delete("spip_cm_pending", "pnd_action_date <" . $valid_date);
spip_log('Suppression des abonnements en attente depuis plus d\'un mois', 'clevermail');
}
示例8: action_instituer_forum_sujet_dist
function action_instituer_forum_sujet_dist()
{
static $statuts_sujet = array('verrou_on' => 'verrouille', 'verrou_off' => 'verrouille', 'resolu_on' => 'resolu', 'resolu_off' => 'resolu');
$securiser_action = charger_fonction('securiser_action', 'inc');
$args = $securiser_action();
list($objet, $id_forum, $action) = explode('/', $args);
if (!$action or !array_key_exists($action, $statuts_sujet)) {
return;
}
if ($id_forum = intval($id_forum)) {
$titre = sql_getfetsel('titre', 'spip_forum', 'id_forum=' . sql_quote($id_forum));
$pattern = '_' . $statuts_sujet[$action] . '_';
// On supprime systematique le statut demande. Ainsi si l'action demandee est d'enlever un
// statut c'est fait sinon on evite de rajouter le meme statut
$titre_modifie = trim(preg_replace(",{$pattern},UimsS", '', $titre));
// Si l'action demandee est de positionner un nouveau statut on le rajoute au titre
if ($action == 'verrou_on' or $action == 'resolu_on') {
$titre_modifie .= $pattern;
}
sql_updateq('spip_forum', array('titre' => $titre_modifie), 'id_forum =' . sql_quote($id_forum));
// Invalider les pages comportant ce forum
include_spip('inc/invalideur');
suivre_invalideur("id='id_forum/{$id_forum}'");
}
}
示例9: action_instituer_article_dist
function action_instituer_article_dist() {
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
list($id_article, $statut) = preg_split('/\W/', $arg);
if (!$statut) $statut = _request('statut_nouv'); // cas POST
if (!$statut) return; // impossible mais sait-on jamais
$id_article = intval($id_article);
// si on passe un statut_old, le controler
// http://trac.rezo.net/trac/spip/ticket/1932
if ($old = _request('statut_old')
AND $s = sql_fetsel('statut', 'spip_articles', 'id_article='.sql_quote($id_article))
AND $s['statut'] != $old)
return;
include_spip('action/editer_article');
$c = array('statut' => $statut);
// si on a envoye une 'date_posterieure', l'enregistrer
if ($d = _request('date_posterieure'))
$c['date'] = $d;
instituer_article($id_article, $c);
}
示例10: exec_editer_mots_args
function exec_editer_mots_args($id_objet, $objet)
{
$base="";
if (!$id_objet OR !$objet)
$droit = false;
elseif ($GLOBALS['connect_toutes_rubriques']) // pour eviter SQL
$droit = true;
elseif ($objet == 'article')
$droit = autoriser('modifier','article',$id_objet);
elseif ($objet == 'rubrique')
$droit = autoriser('publierdans','rubrique',$id_objet);
else {
if ($objet == 'breve')
$droit = sql_select("id_rubrique", "spip_breves", "id_breve=".sql_quote($id_objet));
else
$droit = sql_select("id_rubrique", "spip_syndic", "id_syndic=".sql_quote($id_objet));
$droit = autoriser('publierdans','rubrique',$droit['id_rubrique']);
}
$bases = array('article'=>'articles','breve'=>'breves_voir','rubrique'=>'naviguer','syndic'=>'sites');
if (isset($bases[$objet]))
$base = $bases[$objet];
if (!$droit) {
include_spip('inc/minipres');
echo minipres();
} else {
$ch = _request('cherche_mot');
$id_groupe = _request('select_groupe');
$editer_mots = charger_fonction('editer_mots', 'inc');
ajax_retour($editer_mots($objet, $id_objet, $ch, $id_groupe, 'ajax',false,$base));
}
}
示例11: formulaires_editer_json_article_traiter_dist
function formulaires_editer_json_article_traiter_dist($id_article = 'new', $retour = '')
{
$message = array('editable' => true, 'message_ok' => '');
$vhplab_json = _request('vhplab_json');
$vhplab_json_num = intval($vhplab_json);
if ($vhplab_json_num > 0) {
// comprobamos si el articulo ya ha sido relacionado con un id
$result = sql_select('*', 'spip_vhplab_json_liens', 'id_objet=' . intval($id_article) . ' AND objet=' . sql_quote("article"));
if ($row = sql_fetch($result)) {
// si el articulo ya ha sido relacionado con un id actualizamos el enlace
sql_updateq('spip_vhplab_json', array('id_json' => $vhplab_json_num), 'id_vhplab_json=' . intval($row['id_vhplab_json']));
$message['message_ok'] = _T('vhplab:json_update_ok');
} else {
// si el articulo no ha sido relacionado con ningún id creamos un enlace
$id_vhplab = sql_insertq("spip_vhplab_json", array('id_json' => $vhplab_json_num));
sql_insertq('spip_vhplab_json_liens', array('id_vhplab_json' => intval($id_vhplab), 'id_objet' => intval($id_article), 'objet' => 'article'));
$message['message_ok'] = _T('vhplab:json_insert_ok');
}
}
if ($retour) {
include_spip('inc/headers');
$message['message_ok'] .= redirige_formulaire($retour);
}
return $message;
}
示例12: renseigner_taille_dimension_image
/**
* Renseigner les informations de taille et dimension d'un document
*
* Récupère les informations de taille (largeur / hauteur / type_image / taille) d'un document
* Utilise pour cela les fonctions du répertoire metadatas/*
*
* Ces fonctions de récupérations peuvent retourner d'autres champs si ces champs sont définis
* comme editable dans la déclaration de la table spip_documents
*
* TODO Renommer cette fonction sans "_image"
*
* @param string $fichier
* Le fichier à examiner
* @param string $ext
* L'extension du fichier à examiner
* @return array|string $infos
* Si c'est une chaine, c'est une erreur
* Si c'est un tableau, l'ensemble des informations récupérées du fichier
*/
function renseigner_taille_dimension_image($fichier, $ext)
{
$infos = array('largeur' => 0, 'hauteur' => 0, 'type_image' => '', 'taille' => 0);
// Quelques infos sur le fichier
if (!$fichier or !@file_exists($fichier) or !($infos['taille'] = @intval(filesize($fichier)))) {
spip_log("Echec copie du fichier {$fichier}");
return _T('medias:erreur_copie_fichier', array('nom' => $fichier));
}
// chercher une fonction de description
$meta = array();
if ($metadata = charger_fonction($ext, "metadata", true)) {
$meta = $metadata($fichier);
} else {
$media = sql_getfetsel('media_defaut', 'spip_types_documents', 'extension=' . sql_quote($ext));
if ($metadata = charger_fonction($media, "metadata", true)) {
$meta = $metadata($fichier);
}
}
$meta = pipeline('renseigner_document', array('args' => array('extension' => $ext, 'fichier' => $fichier), 'data' => $meta));
include_spip('inc/filtres');
# pour objet_info()
$editables = objet_info('document', 'champs_editables');
foreach ($meta as $m => $v) {
if (isset($infos[$m]) or in_array($m, $editables)) {
$infos[$m] = $v;
}
}
return $infos;
}
示例13: abos_resilier_notify_bank
/**
* Appeler le presta bancaire si celui-ci dispose d'une methode dans son API pour resilier un abonnement
* @param string $abonne_uid
* @param string $mode_paiement
* @return bool
* renvoie false si le presta bancaire indique un echec, true dans tous les autres cas
*/
function abos_resilier_notify_bank($abonne_uid, $mode_paiement = null)
{
if (!$mode_paiement) {
$mode_paiement = sql_getfetsel("mode", "spip_transactions", "abo_uid=" . sql_quote($abonne_uid, '', 'text'), "", "id_transaction DESC");
}
spip_log("abos/resilier_notify_bank abonne_uid={$abonne_uid} mode={$mode_paiement}", "abos_resil");
$ok = true;
// notifier au presta bancaire si besoin
if ($mode_paiement and $abonne_uid) {
include_spip("inc/bank");
if (!($config = bank_config($mode_paiement, true)) or !isset($config['presta']) or !($presta = $config['presta'])) {
spip_log("abos/resilier_notify_bank presta inconnu pour mode={$mode_paiement}", "abos_resil" . _LOG_ERREUR);
}
if ($presta and $presta_resilier = charger_fonction('resilier_abonnement', "presta/{$presta}/call", true)) {
$ok = $presta_resilier($abonne_uid);
if (!$ok) {
spip_log("Resiliation abo " . $abonne_uid . " refuse par le prestataire", 'abos_resil' . _LOG_ERREUR);
}
} else {
spip_log("abos/resilier_notify_bank : pas de methode resilier_abonnement pour le presta {$presta}", "abos_resil" . _LOG_INFO_IMPORTANTE);
}
if (!$ok) {
bank_simple_call_resilier_abonnement($abonne_uid, $mode_paiement);
// TODO ajouter un message a l'abonnement pour le feedback user
spip_log("Envoi email de desabo " . $abonne_uid . " au webmestre", 'abos_resil' . _LOG_INFO_IMPORTANTE);
// neanmoins, si plus d'echeance prevue, on peut finir
// (cas d'un abos deja resilie fin de mois qu'on veut forcer a resilier immediatement)
// TODO eventuel
}
}
return $ok;
}
示例14: action_supprimer_url_dist
function action_supprimer_url_dist($arg = null)
{
if (is_null($arg)) {
// Rien a faire ici pour le moment
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
}
if (strncmp($arg, "-1-", 3) == 0) {
$id_parent = -1;
$url = substr($arg, 3);
} else {
$arg = explode('-', $arg);
$id_parent = array_shift($arg);
$url = implode('-', $arg);
}
$where = 'id_parent=' . intval($id_parent) . " AND url=" . sql_quote($url);
if ($row = sql_fetsel('*', 'spip_urls', $where)) {
if (autoriser('modifierurl', $row['type'], $row['id_objet'])) {
sql_delete('spip_urls', $where);
} else {
spip_log('supprimer sans autorisation l\'URL ' . $id_parent . "://" . $url, "urls." . _LOG_ERREUR);
}
} else {
spip_log('Impossible de supprimer une URL inconnue ' . $id_parent . "://" . $url, "urls." . _LOG_INFO_IMPORTANTE);
}
}
示例15: action_documenter_post
function action_documenter_post($r)
{
// - sign indique le portfolio image ou document, dans le cas de
// la page exec=articles
// - id est l'id_objet (id_article ou id_rubrique etc)
// - type est 'article' (ou 'rubrique')
// - id_document le doc a supprimer ou a delier de l'objet
// SI VIDE, on supprime tous les documents du type SIGN
// (bouton "supprimer tous les documents")
list(, $sign, $id, $type, ,$id_document) = $r;
if ($id_document) {
supprimer_lien_document($id_document, $type, $id);
}
else {
$obj = "id_objet=".intval($id)." AND objet=".sql_quote($type);
$typdoc = sql_in('docs.extension', array('gif', 'jpg', 'png'), $sign ? '' : 'NOT');
$s = sql_select('docs.id_document AS id_doc', "spip_documents AS docs LEFT JOIN spip_documents_liens AS l ON l.id_document=docs.id_document", "$obj AND docs.mode='document' AND $typdoc");
while ($t = sql_fetch($s)) {
supprimer_lien_document($t['id_doc'], $type, $id);
}
}
if ($type == 'rubrique') {
include_spip('inc/rubriques');
depublier_branche_rubrique_if($id);
}
}