当前位置: 首页>>代码示例>>PHP>>正文


PHP spip_connect函数代码示例

本文整理汇总了PHP中spip_connect函数的典型用法代码示例。如果您正苦于以下问题:PHP spip_connect函数的具体用法?PHP spip_connect怎么用?PHP spip_connect使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了spip_connect函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: base_prefixe_tables

/**
 * Retrouver le prefixe des tables
 * @param string $serveur
 * @return string
 */
function base_prefixe_tables($serveur = '')
{
    spip_connect($serveur);
    $connexion = $GLOBALS['connexions'][$serveur ? $serveur : 0];
    $prefixe = $connexion['prefixe'];
    return $prefixe;
}
开发者ID:genma,项目名称:spip_ynh,代码行数:12,代码来源:dump.php

示例2: action_converser_dist

function action_converser_dist()
{
	if ($lang = _request('var_lang'))
		action_converser_post($lang);
	elseif ($lang = _request('var_lang_ecrire')) {
		if ( _request('arg') AND spip_connect()) {
			$securiser_action = charger_fonction('securiser_action', 'inc');
			$securiser_action();

			sql_updateq("spip_auteurs", array("lang" => $lang), "id_auteur = " . $GLOBALS['visiteur_session']['id_auteur']);
			$GLOBALS['visiteur_session']['lang'] = $lang;
			$session = charger_fonction('session', 'inc');
			if ($spip_session = $session($GLOBALS['visiteur_session'])) {
				spip_setcookie(
					'spip_session',
					$spip_session,
					time() + 3600 * 24 * 14
				);
			}
		}
		action_converser_post($lang, 'spip_lang_ecrire');
	} 

	$redirect = rawurldecode(_request('redirect'));

	if (!$redirect) $redirect = _DIR_RESTREINT_ABS;
	$redirect = parametre_url($redirect,'lang',$lang,'&');
	redirige_par_entete($redirect, true);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:29,代码来源:converser.php

示例3: dump_afficher_tables_sauvegardees

function dump_afficher_tables_sauvegardees($status_file)
{
    $status = dump_lire_status($status_file);
    $tables = $status['tables_copiees'];
    // lister les tables sauvegardees et aller verifier dans le dump
    // qu'on a le bon nombre de donnees
    dump_serveur($status['connect']);
    spip_connect('dump');
    foreach ($tables as $t => $n) {
        $n = abs(intval($n));
        $n_dump = intval(sql_countsel($t, '', '', '', 'dump'));
        $res = "{$t} ";
        if ($n_dump == 0 and $n == 0) {
            $res .= "(" . _T('dump:aucune_donnee') . ")";
        } else {
            $res .= "({$n_dump}/{$n})";
        }
        if ($n !== $n_dump) {
            $res = "<strong>{$res}</strong>";
        }
        $tables[$t] = $res;
    }
    $n = floor(count($tables) / 2);
    $corps = "<div style='width:49%;float:left;'><ul class='spip'><li class='spip'>" . join("</li><li class='spip'>", array_slice($tables, 0, $n)) . "</li></ul></div>" . "<div style='width:49%;float:left;'><ul class='spip'><li>" . join("</li><li class='spip'>", array_slice($tables, $n)) . "</li></ul></div>" . "<div class='nettoyeur'></div>";
    return $corps;
}
开发者ID:loorenzooo,项目名称:aslfc,代码行数:26,代码来源:sauvegarder_fonctions.php

示例4: verifier_crash_tables

/**
 * Vérifier si une table a crashé
 *
 * Pour cela, on vérifie si on peut se connecter à la base de données.
 * 
 * @see message_crash_tables()
 *
 * @return bool|array
 *     Si pas de table de crashée, on retourne `false`.
 *     Sinon,  retourne un tableau contenant tous les noms
 *     des tables qui ont crashé.
 */
function verifier_crash_tables()
{
    if (spip_connect()) {
        include_spip('base/serial');
        include_spip('base/auxiliaires');
        $crash = array();
        foreach (array('tables_principales', 'tables_auxiliaires') as $com) {
            foreach ($GLOBALS[$com] as $table => $desc) {
                if (!sql_select('*', $table, '', '', '', 1) and !defined('spip_interdire_cache')) {
                    # cas "LOST CONNECTION"
                    $crash[] = $table;
                }
            }
        }
        #$crash[] = 'test';
        if ($crash) {
            ecrire_meta('message_crash_tables', serialize($crash));
            spip_log('crash des tables', 'err');
            spip_log($crash, 'err');
        } else {
            effacer_meta('message_crash_tables');
        }
        return $crash;
    }
    return false;
}
开发者ID:JLuc,项目名称:SPIP,代码行数:38,代码来源:maintenance.php

示例5: exec_admin_repair_dist

function exec_admin_repair_dist()
{
	$ok = false;
	if (!spip_connect())
		$message =  _T('titre_probleme_technique');
	else {
		$version_sql = sql_version();
		if (!$version_sql)
			$message = _T('avis_erreur_connexion_mysql');
		else {
			$s = $GLOBALS['connexions'][0]['type'];
		  
			if ($s == 'mysql'
			AND version_compare($version_sql,'3.23.14','<'))
			  $message = _T('avis_version_mysql', array('version_mysql' => " MySQL $version_sql"));
			else {
				$message = _T('texte_requetes_echouent');
				$ok = true;
			}
		}
		$action = _T('texte_tenter_reparation');
	}
	if ($ok) {
		$admin = charger_fonction('admin', 'inc');
		echo $admin('admin_repair', $action, $message, true);
	} else {
		include_spip('inc/minipres');
		echo minipres(_T('titre_reparation'), "<p>$message</p>");
	}
}
开发者ID:rhertzog,项目名称:lcs,代码行数:30,代码来源:admin_repair.php

示例6: base_restaurer_dist

function base_restaurer_dist($titre = '', $reprise = false)
{
    $status_file = _DUMP_STATUS_FILE;
    $status_file = _DIR_TMP . basename($status_file) . ".txt";
    if (!lire_fichier($status_file, $status) or !($status = unserialize($status))) {
    } else {
        $redirect = parametre_url(generer_action_auteur('restaurer', _DUMP_STATUS_FILE), "step", intval(_request('step') + 1), '&');
        $timeout = ini_get('max_execution_time');
        // valeur conservatrice si on a pas reussi a lire le max_execution_time
        if (!$timeout) {
            $timeout = 30;
        }
        // parions sur une valeur tellement courante ...
        $max_time = time() + $timeout / 2;
        include_spip('inc/minipres');
        @ini_set("zlib.output_compression", "0");
        // pour permettre l'affichage au fur et a mesure
        $titre = _T('dump:restauration_en_cours') . " (" . count($status['tables']) . ") ";
        $balise_img = chercher_filtre('balise_img');
        $titre .= $balise_img(chemin_image('searching.gif'));
        echo install_debut_html($titre);
        // script de rechargement auto sur timeout
        echo http_script("window.setTimeout('location.href=\"" . $redirect . "\";'," . $timeout * 1000 . ")");
        echo "<div style='text-align: left'>\n";
        dump_serveur($status['connect']);
        spip_connect('dump');
        // au premier coup on ne fait rien sauf afficher l'ecran de sauvegarde
        if (_request('step')) {
            $options = array('callback_progression' => 'dump_afficher_progres', 'max_time' => $max_time, 'no_erase_dest' => lister_tables_noerase(), 'where' => $status['where'] ? $status['where'] : array(), 'desc_tables_dest' => array());
            if ($desc = sql_getfetsel('valeur', 'spip_meta', "nom='dump_structure_temp'", '', '', '', '', 'dump') and $desc = unserialize($desc)) {
                $options['desc_tables_dest'] = $desc;
            }
            #var_dump(sql_allfetsel('nom,valeur','spip_meta',"",'','','','','dump'));
            #die();
            $res = base_copier_tables($status_file, $status['tables'], 'dump', '', $options);
        } else {
            // mais on en profite pour reparer les version base pour etre sur de ne pas les perdre
            sql_updateq("spip_meta", array('impt' => 'oui'), "nom='version_installee'", '', 'dump');
            sql_updateq("spip_meta", array('impt' => 'oui'), "nom LIKE '%_base_version'", '', 'dump');
        }
        echo "</div>\n";
        if (!$res) {
            echo dump_relance($redirect);
        }
        echo install_fin_html();
        ob_end_flush();
        flush();
        if (!$res) {
            exit;
        }
        // quand on sort de $export avec true c'est qu'on a fini
        dump_end(_DUMP_STATUS_FILE, 'restaurer');
        include_spip('inc/headers');
        echo redirige_formulaire(generer_url_ecrire("restaurer", 'status=' . _DUMP_STATUS_FILE, '', true, true));
    }
}
开发者ID:genma,项目名称:spip_ynh,代码行数:56,代码来源:restaurer.php

示例7: action_converser_dist

function action_converser_dist()
{
    $update_session = false;
    if (_request('arg') and spip_connect()) {
        $securiser_action = charger_fonction('securiser_action', 'inc');
        $securiser_action();
        $update_session = true;
    }
    $lang = action_converser_changer_langue($update_session);
    $redirect = rawurldecode(_request('redirect'));
    if (!$redirect) {
        $redirect = _DIR_RESTREINT_ABS;
    }
    $redirect = parametre_url($redirect, 'lang', $lang, '&');
    redirige_par_entete($redirect, true);
}
开发者ID:genma,项目名称:spip_ynh,代码行数:16,代码来源:converser.php

示例8: base_lister_toutes_tables

/**
 * Lister toutes les tables d'un serveur
 * en excluant eventuellement une liste fournie
 *
 * @param string $serveur
 * @param array $tables
 * @param array $exclude
 * @param bool $affiche_vrai_prefixe
 * @return array
 */
function base_lister_toutes_tables($serveur = '', $tables = array(), $exclude = array(), $affiche_vrai_prefixe = false)
{
    spip_connect($serveur);
    $connexion = $GLOBALS['connexions'][$serveur ? $serveur : 0];
    $prefixe = $connexion['prefixe'];
    $p = '/^' . $prefixe . '/';
    $res = $tables;
    foreach (sql_alltable(null, $serveur) as $t) {
        if (preg_match($p, $t)) {
            $t1 = preg_replace($p, 'spip', $t);
            if (!in_array($t1, $tables) and !in_array($t1, $exclude)) {
                $res[] = $affiche_vrai_prefixe ? $t : $t1;
            }
        }
    }
    sort($res);
    return $res;
}
开发者ID:loorenzooo,项目名称:aslfc,代码行数:28,代码来源:dump.php

示例9: auth_ldap_connect

/**
 * Connexion a l'annuaire LDAP
 * Il faut passer par spip_connect() pour avoir les info
 * donc potentiellement indiquer un serveur
 * meme si dans les fait cet argument est toujours vide
 *
 * @param string $serveur
 * @return string
 */
function auth_ldap_connect($serveur='') {
	include_spip('base/connect_sql');
	static $connexions_ldap = array();
	if (isset($connexions_ldap[$serveur])) return $connexions_ldap[$serveur]; 
	$connexion = spip_connect($serveur);
	if (!is_array($connexion['ldap'])) {
		if ($connexion['authentification']['ldap']) {
			$f =  _DIR_CONNECT . $connexion['authentification']['ldap'];
			unset($GLOBALS['ldap_link']);
			if (is_readable($f)) include_once($f);
			if (isset($GLOBALS['ldap_link']))
				$connexion['ldap'] = array('link' => $GLOBALS['ldap_link'],
					'base' => $GLOBALS['ldap_base']);
			else spip_log("connection LDAP $serveur mal definie dans $f");
			if (isset($GLOBALS['ldap_champs']))
				$connexion['ldap']['attributes'] = $GLOBALS['ldap_champs'];
		} else spip_log("connection LDAP $serveur inconnue");
	}
	return $connexions_ldap[$serveur]=$connexion['ldap'];
}
开发者ID:rhertzog,项目名称:lcs,代码行数:29,代码来源:ldap.php

示例10: inc_sauvegarder_dist

function inc_sauvegarder_dist($status_file, $redirect = '')
{
    $status_file = _DIR_TMP . basename($status_file) . ".txt";
    if (!lire_fichier($status_file, $status) or !($status = unserialize($status))) {
    } else {
        $timeout = ini_get('max_execution_time');
        // valeur conservatrice si on a pas reussi a lire le max_execution_time
        if (!$timeout) {
            $timeout = 30;
        }
        // parions sur une valeur tellement courante ...
        $max_time = time() + $timeout / 2;
        include_spip('inc/minipres');
        @ini_set("zlib.output_compression", "0");
        // pour permettre l'affichage au fur et a mesure
        $titre = _T('dump:sauvegarde_en_cours') . " (" . count($status['tables']) . ") ";
        $balise_img = chercher_filtre('balise_img');
        $titre .= $balise_img(chemin_image('searching.gif'));
        echo install_debut_html($titre);
        // script de rechargement auto sur timeout
        echo http_script("window.setTimeout('location.href=\"" . $redirect . "\";'," . $timeout * 1000 . ")");
        echo "<div style='text-align: left'>\n";
        dump_serveur($status['connect']);
        spip_connect('dump');
        // au premier coup on ne fait rien sauf afficher l'ecran de sauvegarde
        $res = false;
        if (_request('step')) {
            $options = array('callback_progression' => 'dump_afficher_progres', 'max_time' => $max_time, 'no_erase_dest' => lister_tables_noerase(), 'where' => $status['where'] ? $status['where'] : array());
            $res = base_copier_tables($status_file, $status['tables'], '', 'dump', $options);
        }
        echo "</div>\n";
        if (!$res and $redirect) {
            echo dump_relance($redirect);
        }
        echo install_fin_html();
        ob_end_flush();
        flush();
        return $res;
    }
}
开发者ID:genma,项目名称:spip_ynh,代码行数:40,代码来源:sauvegarder.php

示例11: exec_base_repair_dist

/**
 * Reparer la base de donnees
 */
function exec_base_repair_dist()
{
    $ok = false;
    if (!spip_connect()) {
        $message = _T('titre_probleme_technique');
    } else {
        $version_sql = sql_version();
        if (!$version_sql) {
            $message = _T('avis_erreur_connexion_mysql');
        } else {
            $message = _T('texte_requetes_echouent');
            $ok = true;
        }
        $action = _T('texte_tenter_reparation');
    }
    if ($ok) {
        $admin = charger_fonction('admin', 'inc');
        echo $admin('repair', $action, $message, true);
    } else {
        include_spip('inc/minipres');
        echo minipres(_T('titre_reparation'), "<p>{$message}</p>");
    }
}
开发者ID:nursit,项目名称:SPIP,代码行数:26,代码来源:base_repair.php

示例12: action_confirmer_signature_dist

/**
 * Confirmer une signature
 * Retour a l'ecran du lien de confirmation d'une signature de petition.
 * var_confirm contient le hash de la signature.
 * Au premier appel on traite et on publie
 * Au second appel on retourne le resultat a afficher
 *
 * @staticvar string $confirm
 * @param <type> $var_confirm
 * @return string 
 */
function action_confirmer_signature_dist($var_confirm = null)
{
    static $confirm = null;
    // reponse mise en cache dans la session ?
    $code_message = 'signature_message_' . strval($var_confirm);
    if (isset($GLOBALS['visiteur_session'][$code_message])) {
        return $GLOBALS['visiteur_session'][$code_message];
    }
    // reponse deja calculee depuis public/assembler.php
    if (isset($confirm)) {
        return $confirm;
    }
    if (is_null($var_confirm)) {
        $securiser_action = charger_fonction('securiser_action', 'inc');
        $var_confirm = $securiser_action();
    }
    if (!$var_confirm or $var_confirm == 'publie' or $var_confirm == 'poubelle') {
        return '';
    }
    if (!spip_connect()) {
        $confirm = _T('petitions:form_pet_probleme_technique');
        return '';
    }
    include_spip('inc/texte');
    include_spip('inc/filtres');
    // Suppression d'une signature par un moderateur ?
    // Cf. plugin notifications
    if (isset($_GET['refus'])) {
        // verifier validite de la cle de suppression
        // l'id_signature est dans var_confirm
        include_spip('inc/securiser_action');
        if ($id_signature = intval($var_confirm) and ($_GET['refus'] == _action_auteur("supprimer signature {$id_signature}", '', '', 'alea_ephemere') or $_GET['refus'] == _action_auteur("supprimer signature {$id_signature}", '', '', 'alea_ephemere_ancien'))) {
            include_spip('action/editer_signature');
            signature_modifier($id_signature, array("statut" => 'poubelle'));
            $confirm = _T('petitions:info_signature_supprimee');
        } else {
            $confirm = _T('petitions:info_signature_supprimee_erreur');
        }
        return '';
    }
    $row = sql_fetsel('*', 'spip_signatures', "statut=" . sql_quote($var_confirm), '', "1");
    if (!$row) {
        $confirm = _T('petitions:form_pet_aucune_signature');
        return '';
    }
    $id_signature = $row['id_signature'];
    $id_petition = $row['id_petition'];
    $adresse_email = $row['ad_email'];
    $url_site = $row['url_site'];
    $row = sql_fetsel('email_unique, site_unique, id_article', 'spip_petitions', "id_petition=" . intval($id_petition));
    $email_unique = $row['email_unique'] == "oui";
    $site_unique = $row['site_unique'] == "oui";
    $id_article = $row['id_article'];
    include_spip('action/editer_signature');
    signature_modifier($id_signature, array('statut' => 'publie'));
    if ($email_unique) {
        $r = "id_petition=" . intval($id_petition) . " AND ad_email=" . sql_quote($adresse_email);
        if (signature_entrop($r)) {
            $confirm = _T('petitions:form_pet_deja_signe');
        }
    }
    if ($site_unique) {
        $r = "id_petition=" . intval($id_petition) . " AND url_site=" . sql_quote($url_site);
        if (signature_entrop($r)) {
            $confirm = _T('petitions:form_pet_site_deja_enregistre');
        }
    }
    include_spip('inc/session');
    if (!$confirm) {
        $confirm = _T('petitions:form_pet_signature_validee');
        // noter dans la session que l'email est valide
        // de facon a permettre de signer les prochaines
        // petitions sans refaire un tour d'email
        session_set('email_confirme', $adresse_email);
        // invalider les pages ayant des boucles signatures
        include_spip('inc/invalideur');
        suivre_invalideur("id='signature/{$id_signature}'");
        suivre_invalideur("id='article/{$id_article}'");
    }
    // Conserver la reponse dans la session du visiteur
    if ($confirm) {
        session_set($code_message, $confirm);
    }
}
开发者ID:genma,项目名称:spip_ynh,代码行数:95,代码来源:confirmer_signature.php

示例13: spip_mysql_query

/**
 * Exécute une requête MySQL, munie d'une trace à la demande
 * 
 * @param string $query    Requête
 * @param string $serveur  Nom de la connexion
 * @param bool   $requeter Exécuter la requête, sinon la retourner
 * @return array|resource|string|bool
 *     - string : Texte de la requête si on ne l'exécute pas
 *     - ressource|bool : Si requête exécutée
 *     - array : Tableau décrivant requête et temps d'exécution si var_profile actif pour tracer.
 */
function spip_mysql_query($query, $serveur = '', $requeter = true)
{
    $connexion =& $GLOBALS['connexions'][$serveur ? strtolower($serveur) : 0];
    $prefixe = $connexion['prefixe'];
    $link = $connexion['link'];
    $db = $connexion['db'];
    $query = _mysql_traite_query($query, $db, $prefixe);
    // renvoyer la requete inerte si demandee
    if (!$requeter) {
        return $query;
    }
    if (isset($_GET['var_profile'])) {
        include_spip('public/tracer');
        $t = trace_query_start();
    } else {
        $t = 0;
    }
    $connexion['last'] = $query;
    $connexion['total_requetes']++;
    // ajouter un debug utile dans log/mysql-slow.log ?
    $debug = '';
    if (defined('_DEBUG_SLOW_QUERIES') and _DEBUG_SLOW_QUERIES) {
        if (isset($GLOBALS['debug']['aucasou'])) {
            list(, $id, , $infos) = $GLOBALS['debug']['aucasou'];
            $debug .= " BOUCLE{$id} @ " . $infos[0] . " | ";
        }
        $debug .= " " . $_SERVER['REQUEST_URI'] . ' + ' . $GLOBALS['ip'];
        $debug = ' /*' . str_replace('*/', '@/', $debug) . ' */';
    }
    $r = mysqli_query($link, $query . $debug);
    //Eviter de propager le GoneAway sur les autres requetes d'un même processus PHP
    if ($e = spip_mysql_errno($serveur)) {
        // Log d'un Gone Away
        if ($e == 2006) {
            //Si Gone Away on relance une connexion vierge
            //Fermer la connexion defaillante
            mysqli_close($connexion['link']);
            unset($GLOBALS['connexions'][$serveur ? strtolower($serveur) : 0]);
            //Relancer une connexion vierge
            spip_connect($serveur);
            $connexion =& $GLOBALS['connexions'][$serveur ? strtolower($serveur) : 0];
            $link = $connexion['link'];
            //On retente au cas où
            $r = mysqli_query($link, $query . $debug);
        }
    }
    if ($e = spip_mysql_errno($serveur)) {
        // Log de l'erreur eventuelle
        $e .= spip_mysql_error($query, $serveur);
    }
    // et du fautif
    return $t ? trace_query_end($query, $t, $r, $e, $serveur) : $r;
}
开发者ID:phenix-factory,项目名称:SPIP,代码行数:64,代码来源:mysql.php

示例14: actualise_plugins_actifs

function actualise_plugins_actifs($pipe_recherche = false){
	if (!spip_connect()) return false;
	$plugin_actifs = liste_chemin_plugin_actifs();
	$plugin_liste = liste_plugin_files();
	$plugin_new = array_intersect($plugin_actifs,$plugin_liste);
	$actifs_avant = $GLOBALS['meta']['plugin'];
	ecrire_plugin_actifs($plugin_new,$pipe_recherche);
	// retourner -1 si la liste des plugins actifs a change
	return (strcmp($GLOBALS['meta']['plugin'],$actifs_avant)==0) ? 1 : -1;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:10,代码来源:plugin.php

示例15: formulaires_signature_traiter_dist

function formulaires_signature_traiter_dist($id_article)
{
    $reponse = _T('petitions:form_pet_probleme_technique');
    include_spip('base/abstract_sql');
    if (spip_connect()) {
        $controler_signature = charger_fonction('controler_signature', 'inc');
        $reponse = $controler_signature($id_article, _request('session_nom'), _request('session_email'), _request('message'), _request('signature_nom_site'), _request('signature_url_site'), _request('url_page'));
    }
    return array('message_ok' => $reponse);
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:10,代码来源:signature.php


注:本文中的spip_connect函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。