コード例 #1
0
ファイル: delete_all.php プロジェクト: rhertzog/lcs
function liste_tables_en_base($name)
{
	$res = sql_alltable();
	$c = "type='checkbox' checked='checked'";
	foreach ($res as $k => $t) {
		$res[$k] = "<input $c value='$t' id='$name_$t' name='$name"
			. "[]' />\n"
			. $t
			. " ("
			.  sql_countsel($t)
	  		. ")";
	}
	return $res;
}
コード例 #2
0
ファイル: declarer_bases.php プロジェクト: genma/spip_ynh
function formulaires_declarer_bases_charger_dist()
{
    list($adresse_db, $login_db, $pass_db, $sel, $server_db) = analyse_fichier_connection(_FILE_CONNECT);
    $deja = bases_referencees(_FILE_CONNECT);
    // proposer un nom de connect si pas encore saisi
    $nom_connect = "";
    if (defined('_DECLARER_choix_db')) {
        $nom_connect = _DECLARER_choix_db;
        $n = "";
        while (in_array($nom_connect . $n, $deja)) {
            $n = $n ? $n + 1 : 1;
        }
        $nom_connect = $nom_connect . $n;
    }
    $valeurs = array('_etapes' => 3, '_bases_deja' => $deja, '_bases_prop' => defined('_DECLARER_serveur_db') ? liste_bases(_DECLARER_serveur_db) : '', '_tables' => (defined('_DECLARER_serveur_db') and defined('_DECLARER_choix_db')) ? $tables = sql_alltable('%', _DECLARER_serveur_db) : array(), 'main_db' => '', '_serveurs' => liste_serveurs(), 'sql_serveur_db' => 'sqlite3', 'adresse_db' => $adresse_db, 'login_db' => '', 'pass_db' => '', 'choix_db' => '', 'table_new' => '', 'nom_connect' => $nom_connect);
    return $valeurs;
}
コード例 #3
0
ファイル: etape_sup2.php プロジェクト: rhertzog/lcs
function install_bases_sup($adresse_db, $login_db, $pass_db,  $server_db, $sup_db){

	if (!($GLOBALS['connexions'][$server_db] = spip_connect_db($adresse_db, 0, $login_db, $pass_db, '', $server_db)))

		return "<!-- connection perdue -->";

	$GLOBALS['connexions'][$server_db][$GLOBALS['spip_sql_version']]
	= $GLOBALS['spip_' . $server_db .'_functions_' . $GLOBALS['spip_sql_version']];

	if (!sql_selectdb($sup_db, $server_db))
		return "<!-- base inaccessible -->";

	$tables = sql_alltable('%', $server_db);

	if (!$tables)
	  $res = _T('install_pas_table');
	else {
	  $res = _T('install_tables_base')
	    . "<ol style='text-align: left'>\n<li>"
	    . join("</li>\n<li>", $tables)
	    . "</li>\n</ol>\n";
	}

	if (preg_match(',(.*):(.*),', $adresse_db, $r))
		list(,$adresse_db, $port) = $r;
	else
		$port = '';

	$adresse_db = addcslashes($adresse_db,"'\\");
	$port = addcslashes($port,"'\\");
	$login_db = addcslashes($login_db,"'\\");
	$pass_db = addcslashes($pass_db,"'\\");
	$sup_db = addcslashes($sup_db,"'\\");
	$server_db = addcslashes($server_db,"'\\");

	$conn = install_mode_appel($server_db)
	. "spip_connect_db("
	. "'$adresse_db','$port','$login_db',"
	. "'$pass_db','$sup_db'"
	. ",'$server_db', '');\n";

	install_fichier_connexion(_DIR_CONNECT . $sup_db . '.php', $conn);

	return '<div style="background-color: #eeeeee">' . $res . '</div>';
}
コード例 #4
0
ファイル: dump.php プロジェクト: loorenzooo/aslfc
/**
 * 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;
}
コード例 #5
0
ファイル: objets.php プロジェクト: loorenzooo/aslfc
function lister_tables_spip($serveur=''){
	static $tables = array();
	if (!isset($tables[$serveur])){
		$tables[$serveur] = array();
		if (!function_exists("sql_alltable"))
			include_spip("base/abstract_sql");
		$ts = sql_alltable(null,$serveur); // toutes les tables "spip_" (ou prefixe perso)
		$connexion = $GLOBALS['connexions'][$serveur ? $serveur : 0];
		$spip = $connexion['prefixe'] . '_';
		foreach ($ts as $t){
			$t = substr($t,strlen($spip));
			$tables[$serveur]["spip_$t"] = $t;
		}
	}
	return $tables[$serveur];
}
コード例 #6
0
/**
 * Liste les id d'un type donne utilisant une composition donnee
 *
 * @param string $type
 * @param string $composition
 * @return array
 */
function compositions_lister_utilisations($type,$composition){
	$table_sql = table_objet_sql($type);
	if (!in_array($table_sql, sql_alltable())) {
		return;
	}
	$trouver_table = charger_fonction('trouver_table', 'base');
	$desc = $trouver_table($table_sql);
	$_id_table_objet = id_table_objet($type);
	$titre = isset($desc['titre']) ? $desc['titre'] : "'' AS titre";
	return sql_allfetsel("$_id_table_objet as id, $titre", $table_sql, "composition=".sql_quote($composition));
}
コード例 #7
0
ファイル: objets.php プロジェクト: genma/spip_ynh
function lister_toutes_tables($serveur)
{
    static $tables = array();
    if (!isset($tables[$serveur])) {
        $tables[$serveur] = array();
        if (!function_exists("sql_alltable")) {
            include_spip("base/abstract_sql");
        }
        $ts = sql_alltable('%', $serveur);
        // toutes les tables
        foreach ($ts as $t) {
            $tables[$serveur][$t] = $t;
        }
    }
    return $tables[$serveur];
}
コード例 #8
0
ファイル: admin_tech.php プロジェクト: rhertzog/lcs
function controle_tables_en_base($name, $check)
{
	$p = '/^' . $GLOBALS['table_prefix'] . '/';
	$res = $check;
	foreach(sql_alltable() as $t) {
		$t = preg_replace($p, 'spip', $t);
		if (!in_array($t, $check)) $res[]= $t;
	}
	sort($res);

	foreach ($res as $k => $t) {

		$res[$k] = "<input type='checkbox' value='$t' name='$name"
			. "[]'"
			. (in_array($t, $check) ? " checked='checked'" : '') 
			. "/>\n"
			. $t
			. " ("
			.  sql_countsel($t)
	  		. ")";
	}
	return $res;
}