instalator strony

GoKis

Użytkownik
Dołączył
Maj 9, 2010
Posty
7
Witam pisze z prośbą o instalator bazy danych np:
Ktos wchodzi na blabla.pl/install.php i wpisuje dane do bazy danych a skrypt sam wszystko zainstaluje
 

D.F.

Były Moderator
Dołączył
Listopad 4, 2009
Posty
493
Ja bym stworzył tabele ręcznie, pozapisywał sobie wygenerowane zapytania i wstawił do kodu PHP.
 

widmo17

Były Moderator
Dołączył
Lipiec 16, 2007
Posty
1089
Witam pisze z prośbą o instalator bazy danych np:
Ktos wchodzi na blabla.pl/install.php i wpisuje dane do bazy danych a skrypt sam wszystko zainstaluje
Może tak trochę więcej informacji? Skrypt ma automatycznie rozpoznać po częstotliwościach drgań Twoich neuronów co ma być w bazie, ile pól, jaki typ pola itp? ;>
 

hxv

Były Moderator
Dołączył
Sierpień 9, 2006
Posty
797
Raczej nie, automatyczne instalatory mają to do siebie, że zazwyczaj prościej się ich używa niż phpMyAdmina.
 
Ostatnia edycja:

GoKis

Użytkownik
Dołączył
Maj 9, 2010
Posty
7
mam np. baza.sql i chce zeby instalator to wgral do mojej bazy danych
 

cyber_pl

Użytkownik
Dołączył
Wrzesień 30, 2009
Posty
187
ja proponuje sprawdzic jak to wyglada w systemach cms, zamienic definicje tabeli w pliku php i mamy juz wlasny instalator ktory zdefiniuje w bazie danych swoje wlasne tabele.

reszte danych mozna wgrac poprzez phpMyadmin lub inny program do zarzadzania bazami.
 

FiFU

Użytkownik
Dołączył
Maj 30, 2010
Posty
2
U mnie wygląda to tak:

Kod:
<?php
$server = htmlentities($_POST['mysql_server']);
$user = htmlentities($_POST['mysql_user']);
$pass = htmlentities($_POST['mysql_pass']);
$db = htmlentities($_POST['mysql_db']);
$www = htmlentities($_POST['site']);

if(!$server){
echo 'Uzupełnij adres serwera MySQL!';
}

if(!$user){
echo 'Uzupełnij nazwę użytkownika MySQL!';
}

if(!$pass){
echo 'Uzupełnij hasło MySQL!';
}

if(!$db){
echo 'Uzupełnij nazwę bazy MySQL!';
}

if(!$www){
echo 'Uzupełnij adres strony!';
}

if($server && $user && $pass && $db && $www){

$fopen = fopen("../.htaccess","r+");
$htaccess = "<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/?$ link.php?id=$1 [L]
</IfModule>";
fwrite($fopen,$htaccess);
fclose($fopen);

$handle = fopen("../config.php","r+");

$mysql_server = '$server';
$mysql_user = '$user';
$mysql_pass = '$pass';
$mysql_db = '$db';
$site = '$www';
$conn = '$conn';

$cfg = "<?
$mysql_server = \"$server\";
$mysql_user = \"$user\";
$mysql_pass = \"$pass\";
$mysql_db = \"$db\";
$site = \"$www\";

$conn = mysql_connect(\"$mysql_server\", \"$mysql_user\", \"$mysql_pass\");
mysql_select_db(\"$mysql_db\") or die(\"Błąd podczas wybierania bazy danych\");
?>";

fwrite($handle,$cfg);
fclose($handle);

fopen('../installed.txt', 'a');

require('../config.php');
mysql_query("
CREATE TABLE `links` (
`id` varchar( 5 ) NOT NULL ,
`adres` varchar( 100 ) NOT NULL ,
PRIMARY KEY ( id )
)
") or die(mysql_error());

echo 'Instalacja powiodła się! Usuń teraz katalog <b>install</b> ze swojego serwera i ustaw chmod 644 dla pliku <b>config.php</b>.';
}
?>

Proste, z $_POST pobierane są dane do połączenia z bazą MySQL, następnie zapisywane są do pliku config.php, potem za pomocą funkcji require(); pobieramy zawartość pliku config.php i za pomocą MySQL tworzymy tabelę w bazie.
 
Do góry Bottom