function install_etape_2_bases($login_db, $server_db) { $res = install_etape_liste_bases($server_db, $login_db); if ($res) { list($checked, $bases) = $res; return array($checked, "<label for='choix_db'><b>" . _T('texte_choix_base_2') . "</b><br />" . _T('texte_choix_base_3') . "</label>" . "<ul>\n<li>" . join("</li>\n<li>", $bases) . "</li>\n</ul><p>" . _T('info_ou') . " "); } $res = "<b>" . _T('avis_lecture_noms_bases_1') . "</b>\n\t\t" . _T('avis_lecture_noms_bases_2') . "<p>"; if ($login_db) { // Si un login comporte un point, le nom de la base est plus // probablement le login sans le point -- testons pour savoir $test_base = $login_db; $ok = sql_selectdb($test_base, $server_db); $test_base2 = str_replace('.', '_', $test_base); if (sql_selectdb($test_base2, $server_db)) { $test_base = $test_base2; $ok = true; } if ($ok) { $res .= _T('avis_lecture_noms_bases_3') . "<ul>" . "<li><input name=\"choix_db\" value=\"" . $test_base . "\" type='radio' id='stand' checked='checked' />" . "<label for='stand'>" . $test_base . "</label></li>\n" . "</ul>" . "<p>" . _T('info_ou') . " "; $checked = true; } } return array($checked, $res); }
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>'; }
function formulaires_declarer_bases_verifier_2_dist() { $erreurs = array(); $choix_db = _request('choix_db'); if ($choix_db == '-1') { $choix_db = _request('table_new'); } if (!$choix_db) { $erreurs['choix_db'] = _T('info_obligatoire'); } else { define('_ECRIRE_INSTALL', 1); // hackons sqlite if (!sql_selectdb($choix_db, _DECLARER_serveur_db)) { $erreurs['choix_db'] = _T('avis_base_inaccessible', array('base' => $choix_db)); } else { define('_DECLARER_choix_db', $choix_db); } } return $erreurs; }