SQL Manuell ausführen anstatt Datei ausführen, wie geht das?

Eine Neuinstallation von phpBB 2.0 wird auf phpBB.de nicht mehr unterstützt.
Siehe auch Entwicklungs-Ende von phpBB 2.0 - Auswirkungen auf phpBB.de
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.

Eine Neuinstallation von phpBB 2.0 wird auf phpBB.de nicht mehr unterstützt.
Siehe auch Entwicklungs-Ende von phpBB 2.0 - Auswirkungen auf phpBB.de
Lumpi007
Mitglied
Beiträge: 639
Registriert: 23.05.2005 21:25
Wohnort: Hasbergen
Kontaktdaten:

SQL Manuell ausführen anstatt Datei ausführen, wie geht das?

Beitrag von Lumpi007 »

Hallo,

ich installiere einen Mod und da ist nur eine install Datei dabei, keine manuelle SQL Anleitung.

Nun sind die Tabellen in der Datenbank alle anders benannt anstatt phpbb_........

Was müsste ich tun, um die SQL Befehle manuell ausführen zu können?

Hier mal die install.php Datei.

Code: Alles auswählen

<?
$tablename = 'config';

// ******************* NO EDITING BELOW THIS LINE *******************

$lpetver = '1.0.0';

// connect to phpbb
include('./config.php');

$cnx = mysql_connect($dbhost, $dbuser, $dbpasswd)
		or die("Unable to connect to database server.");
mysql_select_db($dbname, $cnx)
		or die("Unable to select database.");


$sql1 = "INSERT INTO ". $table_prefix.$tablename ." (config_name, config_value) VALUES ('board_note_enable', '1')";

$result = mysql_query($sql1);
if(!$result)
	echo "<font color ='red'>Install failed<BR><BR></font>";
	if (mysql_error()) { echo "Error Report: <B>".mysql_error()."</B><BR><BR>"; }
else {
	echo "<font color ='green'>Install complete, new row in the table added.</font><BR><BR><BR>Please remember to delete this file ASAP.<BR><BR><BR>";
	}

$sql1 = "INSERT INTO ". $table_prefix.$tablename ." (config_name, config_value) VALUES ('board_note', 'Board Note Text<br><br>HTH AWSW <img src=\"images/smiles/icon_rolleyes.gif\"><br><a href=\"http://www.awsw.de\">www.awsw.de</a>')";

$result = mysql_query($sql1);
if(!$result)
	echo "<font color ='red'>Install failed<BR><BR></font>";
	if (mysql_error()) { echo "Error Report: <B>".mysql_error()."</B><BR><BR>"; }
else {
	echo "<font color ='green'>Install complete, new row in the table added.</font><BR><BR><BR>Please remember to delete this file ASAP.";
	}
exit;
?>
never touch a running System
Benutzeravatar
Stefane
Mitglied
Beiträge: 784
Registriert: 04.02.2006 22:43
Wohnort: Rathenow
Kontaktdaten:

Beitrag von Stefane »

Hi,
dieses install-Script kannst du als Admin im jeweiligen Forum aufrufen. Es liest nämlich mit

Code: Alles auswählen

$table_prefix
das Prefix des jeweiligen Forums richtig aus.
Also sollte es keine Probleme bei dem Install geben.
Lumpi007
Mitglied
Beiträge: 639
Registriert: 23.05.2005 21:25
Wohnort: Hasbergen
Kontaktdaten:

Beitrag von Lumpi007 »

Hi,
kannst du mir das mal genauer erklären.
never touch a running System
Benutzeravatar
Stefane
Mitglied
Beiträge: 784
Registriert: 04.02.2006 22:43
Wohnort: Rathenow
Kontaktdaten:

Beitrag von Stefane »

na gut.
also...
der Code der Install-Datei (die du als Admin aufrufen sollst) beinhaltet zunächst

Code: Alles auswählen

include('./config.php');
. Damit wird die config.php aus deinem Foren-Ordner aufgerufen und u.a deren Variablen eingebunden. Eine von den Variablen ist die

Code: Alles auswählen

$table_prefix
(kannst ja mal nen Blick dazu in deine config.php riskieren...dort steht nämlich dein Prefix für das Forum, in dessen Ordner du dich befindest...so dass man das nicht immer separat angeben muss und auch andere Prefixes anstatt phpbb_ genommen werden können)
also beinhaltet $table_prefix dein aktuelles Forum-Prefix, das du bei der Installation angegeben hast. Dieses wird nun in dem Install-Script für die SQL-Einträge verwendet...u.a. hier in der Zeile:
$sql1 = "INSERT INTO ". $table_prefix.$tablename ." (config_name, config_value) VALUES ('board_note_enable', '1')";
Ganz oben im Install-Script ist noch das angegeben:

Code: Alles auswählen

$tablename = 'config';
...das heißt, diese Script schreibt in deine Config-Tabelle (prefix_config) deiner Datenbank...

Ich denke, das sollte zur Erklärung reichen. Oder nicht? ;-)
Lumpi007
Mitglied
Beiträge: 639
Registriert: 23.05.2005 21:25
Wohnort: Hasbergen
Kontaktdaten:

Beitrag von Lumpi007 »

Soweit komme ich noch mit. Und was muss ich aus meiner vorhandenen install.php Datei übernehmen?
never touch a running System
Benutzeravatar
Stefane
Mitglied
Beiträge: 784
Registriert: 04.02.2006 22:43
Wohnort: Rathenow
Kontaktdaten:

Beitrag von Stefane »

was willst du erreichen? ich kann mir nicht vorstellen, was du erreichen willst? Wenn du das als MOD in dein Forum eigebaut hast und du nach den CodeChanges die install-Datei aufrufst und diese keine Fehler ausspuckt, hast du die Mod erfolgreich installiert.
Da sollte es keine Probleme geben!!!
Oder kapiere ich gerade nicht, was du machen willst? Selbst wenn dein Prefix nicht "phpbb_" ist das egal, weil dein richtiges Prefix nach dem obigen Prinzip automatisch ausgelesen wird.
Kläre mich bitte auf, wenn ich dich gerade völlig falsch verstehe.
Lumpi007
Mitglied
Beiträge: 639
Registriert: 23.05.2005 21:25
Wohnort: Hasbergen
Kontaktdaten:

Beitrag von Lumpi007 »

Hier mal die Fehlermeldung

Code: Alles auswählen

CBACK CrackerTracker konnte die Datenbankoperation nicht korrekt durchführen.

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'images/smiles/icon_rolleyes.gif">
www.awsw.de
INSERT INTO for_01_ctracker_backup (`config_name`, `config_value`) VALUES ("board_note", "Board Note Text

HTH AWSW 
www.awsw.de")

Line : 637
File : class_ct_adminfunctions.php
never touch a running System
Benutzeravatar
Stefane
Mitglied
Beiträge: 784
Registriert: 04.02.2006 22:43
Wohnort: Rathenow
Kontaktdaten:

Beitrag von Stefane »

Na da wird doch schon mal nen Schuh draus. Damit kann man wenigstens mal was anfangen.
...also... das sieht mir danach aus, als hättest du den neuen CTracker eingebaut, der diese Install-Datei irgendwie blockt. Das Script an sich ist nämlich nicht fehlerhaft.
Vlt gibts ja zu diesem Problem auf www.cback.de eine Lösung.
Wenn nicht, dann hier mal die manuelle SQL-Anweisungen zum Eintragen via phpmyadmin:

Code: Alles auswählen

INSERT INTO phpbb_config (config_name, config_value) VALUES ('board_note_enable', '1');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('board_note', 'Board Note Text<br><br>HTH AWSW <img src="images/smiles/icon_rolleyes.gif"><br><a href="http://www.awsw.de">www.awsw.de</a>');
sollte so funktionieren.
Lumpi007
Mitglied
Beiträge: 639
Registriert: 23.05.2005 21:25
Wohnort: Hasbergen
Kontaktdaten:

Beitrag von Lumpi007 »

ich habe das ausgeführt und bekomme folgende Fehlermeldung in mysql.

Code: Alles auswählen

Fehler
SQL-Befehl: 

INSERT INTO for_01_config( config_name, config_value ) 
VALUES (

'board_note_enable', '1'
);



MySQL meldet:  

#1062 - Duplicate entry 'board_note_enable' for key 1
never touch a running System
Benutzeravatar
Stefane
Mitglied
Beiträge: 784
Registriert: 04.02.2006 22:43
Wohnort: Rathenow
Kontaktdaten:

Beitrag von Stefane »

jo, dann ist der schon drinnen, also musst du nur noch

Code: Alles auswählen

INSERT INTO phpbb_config (config_name, config_value) VALUES ('board_note', 'Board Note Text<br><br>HTH AWSW <img src="images/smiles/icon_rolleyes.gif"><br><a href="http://www.awsw.de">www.awsw.de</a>');
ausführen. Wenn dann auch
#1062 - Duplicate entry ...
kommt, dann ist dieser Teil auch schon vorhanden und die Installation ist abgeschlossen.
Gesperrt

Zurück zu „phpBB 2.0: Installation und Update“