Seite 1 von 1

hilfe bei script bearbeitung bitte

Verfasst: 16.05.2013 13:26
von chris1278
ich habe ein script beim googeln gefunden welches es mir erlaubt die db struktur zu wechseln. z.B. von innoDB zu MYisam

ich würde das script gerne anpassen so das man den db namen usw. eingeben kann wie bei der installation des forums z.B.

hier mal das script:

Code: Alles auswählen

<?php
#This script will change all the table engine types for a given database!
#All the DB tools I have (GNU/freeware) will not change a list of database
# types, so this script saves time when a CMS or other populates a database
# with tables we cannot use! This can be migrated to InnoDB by changing line
# 23, col 46 from MyISAM to InnoDB (double check the capitals there!).
# Change these variables relative: serverName, userName, password, databaseName

# 20051410 JLynch
# myisamFixer.php

ini_set('display_errors', 'On');
error_reporting(E_ALL);

$link = mysql_connect("serverName","userName","password")
or die("unable to connect to msql server: " . msql_error());

mysql_select_db("databaseName", $link)
or die("unable to select database 'db': " . msql_error());

$result = mysql_query("show tables");
if (!$result) {
die('query failed: ');
}

while ($row = mysql_fetch_array($result)){
mysql_query("ALTER TABLE ".$row[0]." ENGINE=MyISAM; ");
#Command Reference: ALTER TABLE tableName ENGINE=MyISAM
}

?> 
wenn ich jetzt hier z.B.
$link = mysql_connect("serverName","userName","password")
or die("unable to connect to msql server: " . msql_error());
den servername username und password eingebe

und hier:
mysql_select_db("databaseName", $link)
or die("unable to select database 'db': " . msql_error());
die datenbank selber dann geht es auch und ich würde es gerne so machen das ich wenn ich die seite aufrufe dort eingabe fenster vorfinde wo ich die daten eingeben kann. ohne jedesmal den quell code zu ändern..

wenn das machbarwäre fände ich das echt super.

Re: hilfe bei script bearbeitung bitte

Verfasst: 16.05.2013 14:38
von cYbercOsmOnauT
Hier sucht man Hilfestellungen und keine Lösungen.. deswegen hier ein Fingerzweig von mir.

Um das ganze Skript herum packen wir

Code: Alles auswählen

if(!isset($_POST))
{
}
else
{
.... hier Dein Skript
}
nach der geschweiften Klammer oben beendest Du PHP und haust dort ein <form method=post> ohne Action rein welche dann mehrere Inputfelder beinhaltet für dbhost, dbuser, dbpass, dbname. Unten fragst Du die Werte dann über die Superglobale $_POST ab. Also z.B.

Code: Alles auswählen

mysql_connect($_POST['dbhost'],$_POST['dbuser'],$_POST['dbpass'])
Ob Du die Eingaben und das Skript extra sichern willst gegen unbefugte Zugriffe bleibt Dir überlassen.