Changeset 71 for trunk/installation/index.php
- Timestamp:
- 11/03/07 12:34:10 (6 years ago)
- File:
-
- 1 edited
-
trunk/installation/index.php (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/installation/index.php
r24 r71 3 3 // Der Zugriff auf das Klassenbuch darf über diese Datei erfolgen 4 4 define("_KBSECURE", true); 5 6 // Fehlermeldungen ganz abschalten 7 error_reporting(0); 5 8 6 9 require_once("wizard.php"); … … 46 49 47 50 function setPage() { 48 $this->page = "<p>Gib den Hostnamen des Servers an, auf dem die Klassenbuch-Datenbank installiert werden soll. " . 51 $this->page = "<p>Alle Aufgaben, Kommentare usw. im Klassenbuch werden in einer MySQL-Datenbank " . 52 "abgelegt. Deshalb werden die Zugangsdaten zur Datenbank benötigt.</p>" . 53 "Gib den Hostnamen des Servers an, auf dem die Klassenbuch-Datenbank installiert werden soll. " . 49 54 "Ferner wird der Name einer bereits existierenden Datenbank benötigt und der Benutzername und das Passwort " . 50 55 "eines Datenbank-Benutzers, der über die Rechte zum Erstellen von Tabellen in dieser Datenbank verfügt.</p>" . 51 "<p>Das Tabellen-Präfix wird allen Tabellen vorangestellt und ist v. a. dann nützlich, wenn sich in der " .52 "Datenbank noch andere Tabellen befinden.</p>" .53 56 54 57 "<h3>Basiseinstellungen</h3>" . … … 61 64 " <input type=\"text\" name=\"wiz_db_name\" value=\"[*wiz_db_name*]\"></td>" . 62 65 " <td class=\"configHelp\"> Einige Hoster erlauben nur eine Datenbank pro Webseite. Wenn das der Fall " . 63 " ist, benutzen Sie bitte die Tabellen-Präfix-Option unter den Erweiterten Einstellungen.</td>" .66 " ist, benutzen Sie bitte die Tabellen-Präfix-Option unter den \"Erweiterten Einstellungen\".</td>" . 64 67 "</tr><tr>" . 65 68 " <td>Benutzername:<br />" . … … 70 73 " <td>Passwort:<br />" . 71 74 " <input type=\"password\" name=\"wiz_db_password\" value=\"[*wiz_db_password*]\"></td>" . 72 " <td class=\"configHelp\">Für die Sicherheit der Webseite ist die Verwendung eines MySQL-Zugangs " . 73 " obligatorisch. Dieses ist das gleiche Passwort für Ihre Datenbank. Dieses könnte von Ihrem Hoster " . 74 " voreingestellt sein.</td>" . 75 " <td class=\"configHelp\">Für die Sicherheit der Klassenbuch-Daten ist die Eingabe eines Passworts" . 76 " obligatorisch. Das Datenbank-Passwort ist möglicherweise von Ihrem Hoster voreingestellt worden.</td>" . 75 77 "</tr></table>" . 76 78 … … 79 81 " <td>Tabellenpräfix:<br />" . 80 82 " <input type=\"text\" name=\"wiz_db_tblprefix\" value=\"[*wiz_db_tblprefix*]\"></td>" . 81 " <td class=\"configHelp\"></td>" . 83 " <td class=\"configHelp\">Das Tabellen-Präfix wird allen Tabellen vorangestellt und ist v. a. dann " . 84 "nützlich, wenn sich in der Datenbank noch andere Tabellen befinden.</td>" . 82 85 "</tr></table>"; 83 86 } … … 85 88 86 89 class InstWiz_DbCheck extends Wizard { 90 var $diags; 91 92 function init() { 93 $this->setPrev("dbconfig"); 94 } 95 96 function testDatabase() { 97 $this->opendb( 98 $this->getVar("wiz_db_host"), 99 $this->getVar("wiz_db_name"), 100 $this->getVar("wiz_db_user"), 101 $this->getVar("wiz_db_password") 102 ); 103 104 $this->diags = $this->checkdb(); 105 106 if ( 107 !$this->diags["Connect"] || 108 !$this->diags["Create"] || 109 !$this->diags["Insert"] || 110 !$this->diags["Update"] || 111 !$this->diags["Select"] || 112 !$this->diags["Delete"] || 113 !$this->diags["Drop"]) { 114 return false; 115 } 116 117 $this->importdb("schema.sql", "kb_", $this->getVar("wiz_db_tblprefix")); 118 119 return true; 120 } 121 122 function setPage() { 123 if ($this->testDatabase()) { 124 $this->setTitle("Datenbank erfolgreich eingerichtet"); 125 $this->setNext("general"); 126 127 $msg = "<p>Die Datenbank wurde erfolgreich eingerichtet. Klicke nun auf [Weiter], um mit der Installation " . 128 "fortzufahren.</p>"; 129 } else { 130 $this->setTitle("Fehler beim Einrichten der Datenbank"); 131 $this->setNext(null); 132 133 $msg = "<p>Die Datenbankeinstellungen stimmen nicht. Bitte klicke auf [Zurück] und überprüfe deine " . 134 "Eingaben.</p>" . 135 "<h3>Detaillierte Ergebnisse</h3><table border=\"0\">"; 136 137 foreach ($this->diags as $action => $result) { 138 $text = !$result ? "<td style=\"color: red;\">Fehlgeschlagen</td>" : "<td style=\"color: green;\">OK</td>"; 139 140 $msg .= "<tr><td>" . strtoupper($action) . "</td>$text</tr>"; 141 } 142 143 $msg .= "</table>"; 144 } 145 146 $this->page = $msg; 147 } 148 } 149 150 class InstWiz_GeneralSettings extends Wizard { 87 151 function init() { 88 152 $this->setPrev("dbconfig"); 89 153 $this->setNext("finish"); 90 $this->setTitle("Überprüfen der Datenbank-Einstellungen"); 91 } 92 93 function action() { 94 $this->displayProgress(); 95 } 96 97 function setPage() { 98 $this->opendb( 99 $this->getVar("wiz_db_host"), 100 $this->getVar("wiz_db_name"), 101 $this->getVar("wiz_db_user"), 102 $this->getVar("wiz_db_password") 103 ); 104 105 $diags = $this->checkdb(); 106 107 $bSuccess = true; 108 109 if ( 110 !$diags["Connect"] || 111 !$diags["Create"] || 112 !$diags["Insert"] || 113 !$diags["Update"] || 114 !$diags["Select"] || 115 !$diags["Delete"] || 116 !$diags["Drop"]) { 117 $bSuccess = false; 118 } 119 120 if ($bSuccess) { 121 $this->importdb("schema.sql", "kb_", $this->getVar("wiz_db_tblprefix")); 122 123 $msg = "Die Datenbank wurde erfolgreich eingerichtet. Klicke nun auf [Weiter], um mit der Installation " . 124 "fortzufahren.</p>"; 125 } else { 126 $msg = "<span style=\"color: red; font-weight: bold;\">Fehler!</span> - Die Datenbankeinstellungen stimmen " . 127 "nicht.</p><p>Bitte klicke auf [Zurück] und überprüfe deine Eingaben.</p>"; 128 $this->setNext(null); 129 } 130 131 $msg .= "<h3>Detaillierte Ergebnisse</h3><table border=\"0\">"; 132 133 foreach ($diags as $action => $result) { 134 $text = !$result ? "<td style=\"color: red;\">Fehlgeschlagen</td>" : "<td style=\"color: green;\">OK</td>"; 135 136 $msg .= "<tr><td>" . $action . "</td>$text</tr>"; 137 } 138 139 $msg .= "</table>"; 140 141 $this->page = $msg; 154 $this->setTitle("Allgemeine Einstellungen"); 155 156 $this->setDefaults(Array( 157 "wiz_title" => "Klassenbuch", 158 "wiz_subtitle" => "der Klasse x an der Schule y" 159 )); 160 } 161 162 function setPage() { 163 $this->page = "<p></p>" . 164 165 "<table class=\"configTable\"><tr>" . 166 " <td>Domain:<br />" . 167 " <input type=\"text\" name=\"wiz_domain\" value=\"[*wiz_domain*]\"></td>" . 168 " <td class=\"configHelp\">Der absolute Pfad zur Klassenbuch-Installation, inklusive \"http://\"." . 169 " Befindet sich das Klassenbuch in einem Unterordner auf dem Webserver, muss dieser auch angegeben " . 170 " werden: z. B. <em>http://www.meineschule.ch/klasse1c/</em></td>" . 171 "</tr><tr>" . 172 " <td>Mail-Adresse:<br />" . 173 " <input type=\"text\" name=\"wiz_mail\" value=\"[*wiz_mail*]\"></td>" . 174 " <td class=\"configHelp\">Die E-Mail-Adresse, von der alle E-Mails verschickt werden sollen. " . 175 " z. B. klasse1c@meineschule.ch</td>" . 176 "</tr><tr>" . 177 " <td>Klassenbuch-Titel:<br />" . 178 " <input type=\"text\" name=\"wiz_title\" value=\"[*wiz_title*]\"></td>" . 179 "</tr><tr>" . 180 " <td>Untertitel:<br />" . 181 " <input type=\"text\" name=\"wiz_subtitle\" value=\"[*wiz_subtitle*]\"></td>" . 182 " <td class=\"configHelp\">Wird gleich unterhalb des Klassenbuch-Titels angezeigt.</td>" . 183 "</tr><tr>" . 184 " <td>Ihr Name:<br />" . 185 " <input type=\"text\" name=\"wiz_adminname\" value=\"[*wiz_adminname*]\"></td>" . 186 " <td class=\"configHelp\"></td>" . 187 "</tr><tr>" . 188 " <td>Ihre E-Mailadresse:<br />" . 189 " <input type=\"text\" name=\"wiz_adminmail\" value=\"[*wiz_adminmail*]\"></td>" . 190 " <td class=\"configHelp\">An diese Adresse werden Benachrichtigungen über Kontoregistrierungen usw. " . 191 " gesendet.</td>" . 192 "</tr></table>"; 142 193 } 143 194 } … … 152 203 function setPage() { 153 204 $settings = $this->readFile("../server.settings.default.php"); 154 $keys = Array("db_host", "db_name", "db_user", "db_password", "db_tblprefix"); 205 $keys = Array("domain", "mail", "adminmail", "adminname", "title", "subtitle", "db_host", "db_name", 206 "db_user", "db_password", "db_tblprefix"); 155 207 156 208 foreach ($keys as $key => $value) { … … 182 234 $wizard->addPage("dbcheck", $dbcheck); 183 235 236 $general = new InstWiz_GeneralSettings("general"); 237 $wizard->addPage("general", $general); 238 184 239 $finish = new InstWiz_Finish("finish"); 185 240 $wizard->addPage("finish", $finish);
Note: See TracChangeset
for help on using the changeset viewer.