function install_etape_sup1_dist() { $adresse_db = _request('adresse_db'); if (!$adresse_db AND defined('_INSTALL_HOST_DB')) $adresse_db =_INSTALL_HOST_DB; $login_db = _request('login_db'); if (!$login_db AND defined('_INSTALL_USER_DB')) $login_db = _INSTALL_USER_DB; $pass_db = _request('pass_db'); if (!$pass_db AND defined('_INSTALL_PASS_DB')) $pass_db = _INSTALL_PASS_DB; $server_db =_request('server_db'); if (!$server_db AND defined('_INSTALL_SERVER_DB')) $server_db = _INSTALL_SERVER_DB; // Ceci indique la base principale (passe en hidden) // pour qu'on la refuse comme choix de base secondaire $sel_db =_request('sel_db'); if (!$sel_db AND defined('_INSTALL_NAME_DB')) $sel_db = _INSTALL_NAME_DB; echo install_debut_html(_T('config_titre_base_sup')); $link = spip_connect_db($adresse_db, 0, $login_db, $pass_db, '', $server_db); $GLOBALS['connexions'][$server_db][$GLOBALS['spip_sql_version']] = $GLOBALS['spip_' . $server_db .'_functions_' . $GLOBALS['spip_sql_version']]; if ($link) { $GLOBALS['connexions'][$server_db] = $link; echo '<div style="background-color: #eeeeee">'; echo "\n<!--\n", join(', ', $link), " $login_db "; echo join(', ', $GLOBALS['connexions'][$server_db]); echo "\n-->\n<p class='resultat'><b>"; echo _T('info_connexion_ok'),"</b></p>\n"; echo '<!-- ', sql_version($server_db), ' -->' ; $l = bases_referencees(); array_push($l, $sel_db); list(, $res) = install_etape_liste_bases($server_db, $login_db, $l); $hidden = predef_ou_cache($adresse_db,$login_db,$pass_db, $server_db) . (defined('_INSTALL_NAME_DB') ? '' : ("\n<input type='hidden' name='sel_db' value='$sel_db' />\n")); echo install_etape_sup1_form($hidden, '', $res, 'sup2'); echo '</div>'; } else { echo info_etape(_T('info_connexion_base')); echo "<p class='resultat'><b>", _T('avis_connexion_echec_1'), "</b></p>"; } echo install_fin_html(); }
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; }
function autres_bases() { $tables = bases_referencees(_FILE_CONNECT); if ($tables) $tables = "<br /><br /><fieldset style='margin-bottom: 10px;'>" . "<legend>"._T('config_info_base_sup_disponibles')."</legend>" . "<ul>\n<li>" . join("</li>\n<li>", $tables) . "</li>\n</ul></fieldset>"; else $tables =''; if (defined('_INSTALL_PASS_DB')) { // Si l'utilisateur n'a pas a donner le mot de passe de la base SQL // ce doit etre une installation mutualisee sur une meme base: // interdiction de creer d'autres acces pour assure la confidentialite $form = ''; } else { // Lire le fichier de connexion pour valeurs par defaut probables list($adresse_db, $login_db, $pass_db, $sel, $server_db) = analyse_fichier_connection(_FILE_CONNECT); // Passer la base courante en Hidden pour ne pas la proposer $name_db = ("\n<input type='hidden' name='sel_db' value='" . $sel . "' />\n"); // Dire que rien n'est predefini $predef = array(false, false, false, false); if (!autoriser('webmestre')){ $login_db = $pass_db = ""; } $form = install_connexion_form(array($adresse_db), array($login_db), array($pass_db), $predef, $name_db, 'sup1'); } return debut_cadre_trait_couleur('',true,'',_T('onglet_declarer_une_autre_base')) . _T('config_info_base_sup') . $tables . $form . fin_cadre_trait_couleur(true); }