Seite 1 von 1

Log Actions Mod - SQL Problem

Verfasst: 29.12.2007 02:07
von F-niX
Nabend

habe mir den oben genannten Mod installiert.
Probleme gibt es nur beim Ausführen der log_actions_db_update.php.

Code: Alles auswählen

phpBB : Kritischer Fehler

Could not connect to the database
Datenbank ist voll und ganz zu erreichen und irgendwelche Daten sollte ich auch nicht in die Datei selbst schreiben. SQL Befehle kann ich ohne Probleme ausführen, nur machen diese mir etwas Ärger.

Da ich die Datei nicht ausführen kann, habe ich sie manuell geöffnet und gedacht ich schreib sie selbst in die Datenbank.
Ich bekomme immer wieder eine Fehlermeldung, egal ob Anführungsstriche zu wenig, Fehler hier, Fehler da.

Kann mir jemand die Befehle so umschreiben, dass ich sie ausführen kann?

Oder mir sagen, wieso ich sofort den kritischen Fehler bekomme?
$sql[] = "CREATE TABLE " . LOGS_TABLE . " (
id_log MEDIUMINT(10) NOT NULL DEFAULT '0' AUTO_INCREMENT,
mode VARCHAR(50) NULL DEFAULT '',
topic_id MEDIUMINT(10) NULL DEFAULT '0',
user_id MEDIUMINT(8) NULL DEFAULT '0',
username VARCHAR(255) NULL DEFAULT '',
user_ip CHAR(8) DEFAULT '0' NOT NULL,
time INT(11) NULL DEFAULT '0',
PRIMARY KEY (id_log))";

$sql[] = "CREATE TABLE " . LOGS_CONFIG_TABLE . " (
config_name varchar(255) NOT NULL,
config_value varchar(255) NOT NULL,
PRIMARY KEY (config_name))";

$sql[] = "INSERT INTO " . LOGS_CONFIG_TABLE . " (
config_name, config_value)
VALUES ('all_admin', 0)";

$sql[] = "ALTER TABLE " . USERS_TABLE . "
ADD user_view_log TINYINT NOT NULL DEFAULT '0'";
break;

case 'postgresql':
$sql[] = "CREATE TABLE " . LOGS_TABLE . " (
id_log SERIAL NOT NULL PRIMARY KEY,
mode VARCHAR(50) DEFAULT '',
topic_id INT4 DEFAULT 0,
user_id INT4 DEFAULT 0,
username VARCHAR(255) DEFAULT '',
user_ip CHAR(8) DEFAULT '0' NOT NULL,
time INT4 DEFAULT 0 )";

$sql[] = "CREATE TABLE " . LOGS_CONFIG_TABLE . " (
config_name varchar(255) NOT NULL PRIMARY KEY,
config_value varchar(255) NOT NULL )";

$sql[] = "INSERT INTO " . LOGS_CONFIG_TABLE . " (
config_name, config_value )
VALUES ( 'all_admin', 0 )";

$sql[] = "ALTER TABLE " . USERS_TABLE . "
ADD user_view_log INT2 NOT NULL DEFAULT 0";
break;

Verfasst: 29.12.2007 02:42
von chris1278
füge die werte doch einfach selber in datenbank ein das geht über phpmyadmin

Re: Log Actions Mod - SQL Problem

Verfasst: 29.12.2007 04:07
von 4seven
Hallo F-nix,

die Befehle in folgender Syntax ausführen:

Statt so..

Code: Alles auswählen

$sql[] = "CREATE TABLE " . LOGS_TABLE . " (
				id_log MEDIUMINT(10) NOT NULL DEFAULT '0' AUTO_INCREMENT,
				mode VARCHAR(50) NULL DEFAULT '', 
				topic_id MEDIUMINT(10) NULL DEFAULT '0',
				user_id MEDIUMINT(8) NULL DEFAULT '0',
				username VARCHAR(255) NULL DEFAULT '',
				user_ip CHAR(8) DEFAULT '0' NOT NULL,
				time INT(11) NULL DEFAULT '0',
				PRIMARY KEY (id_log))";

			$sql[] = "CREATE TABLE " . LOGS_CONFIG_TABLE . " (
				config_name varchar(255) NOT NULL,
				config_value varchar(255) NOT NULL,
				PRIMARY KEY (config_name))";

			$sql[] = "INSERT INTO " . LOGS_CONFIG_TABLE . " (
				config_name, config_value)
				VALUES ('all_admin', 0)";

			$sql[] = "ALTER TABLE " . USERS_TABLE . "
				ADD user_view_log TINYINT NOT NULL DEFAULT '0'";
			break;
		
		 case 'postgresql':
			$sql[] = "CREATE TABLE " . LOGS_TABLE . " (
				id_log SERIAL NOT NULL PRIMARY KEY,
				mode VARCHAR(50) DEFAULT '',
				topic_id INT4 DEFAULT 0,
				user_id INT4 DEFAULT 0,
				username VARCHAR(255) DEFAULT '',
				user_ip CHAR(8) DEFAULT '0' NOT NULL,
				time INT4 DEFAULT 0 )";

			$sql[] = "CREATE TABLE " . LOGS_CONFIG_TABLE . " (
				config_name varchar(255) NOT NULL PRIMARY KEY,
				config_value varchar(255) NOT NULL )";

			$sql[] = "INSERT INTO " . LOGS_CONFIG_TABLE . " (
				config_name, config_value )
				VALUES ( 'all_admin', 0 )";

			$sql[] = "ALTER TABLE " . USERS_TABLE . "
				ADD user_view_log INT2 NOT NULL DEFAULT 0";
			break;
..bitte so

Code: Alles auswählen

         CREATE TABLE LOGS_TABLE  (
				id_log MEDIUMINT(10) NOT NULL DEFAULT '0' AUTO_INCREMENT,
				mode VARCHAR(50) NULL DEFAULT '', 
				topic_id MEDIUMINT(10) NULL DEFAULT '0',
				user_id MEDIUMINT(8) NULL DEFAULT '0',
				username VARCHAR(255) NULL DEFAULT '',
				user_ip CHAR(8) DEFAULT '0' NOT NULL,
				time INT(11) NULL DEFAULT '0',
				PRIMARY KEY (id_log));

			CREATE TABLE LOGS_CONFIG_TABLE  (
				config_name varchar(255) NOT NULL,
				config_value varchar(255) NOT NULL,
				PRIMARY KEY (config_name));

			INSERT INTO LOGS_CONFIG_TABLE  (
				config_name, config_value)
				VALUES ('all_admin', 0);

			ALTER TABLE USERS_TABLE 
				ADD user_view_log TINYINT NOT NULL DEFAULT '0';

			CREATE TABLE LOGS_TABLE  (
				id_log SERIAL NOT NULL PRIMARY KEY,
				mode VARCHAR(50) DEFAULT '',
				topic_id INT4 DEFAULT 0,
				user_id INT4 DEFAULT 0,
				username VARCHAR(255) DEFAULT '',
				user_ip CHAR(8) DEFAULT '0' NOT NULL,
				time INT4 DEFAULT 0 );

			CREATE TABLE LOGS_CONFIG_TABLE  (
				config_name varchar(255) NOT NULL PRIMARY KEY,
				config_value varchar(255) NOT NULL );

			INSERT INTO LOGS_CONFIG_TABLE  (
				config_name, config_value )
				VALUES ( 'all_admin', 0 );

			ALTER TABLE USERS_TABLE 
				ADD user_view_log INT2 NOT NULL DEFAULT 0;
lg
4seven

Verfasst: 29.12.2007 08:44
von ScriptingBase
Man muss aber bedenken, dass man **_TABLE noch durch den Tabellennamen ersetzen muss.

Verfasst: 29.12.2007 11:14
von Andi1111
du musst in der install datei alle include durch include_once ersetzten, steht auch hier http://www.phpbb.de/doku/kb/could_not_connect

Verfasst: 29.12.2007 11:18
von 4seven
Hallo ScriptingBase,
ScriptingBase hat geschrieben:Man muss aber bedenken, dass man **_TABLE noch durch den Tabellennamen ersetzen muss.
gib mal bitte ein Beispiel anhand obigen Codes :)

lg
4seven

Verfasst: 29.12.2007 12:00
von F-niX
Danke Jungs für eure Hilfe.
Der Tipp mit dem include hat wunderbar funktioniert.

Nur gab es eine Fehlermeldung bei der Installation.
Running query :: CREATE TABLE phpbb_logs ( id_log MEDIUMINT(10) NOT NULL DEFAULT '0' AUTO_INCREMENT, mode VARCHAR(50) NULL DEFAULT '', topic_id MEDIUMINT(10) NULL DEFAULT '0', user_id MEDIUMINT(8) NULL DEFAULT '0', username VARCHAR(255) NULL DEFAULT '', user_ip CHAR(8) DEFAULT '0' NOT NULL, time INT(11) NULL DEFAULT '0', PRIMARY KEY (id_log)) -> ERROR - QUERY FAILED ----> Invalid default value for 'id_log'
Alle anderen Befehle wurden ohne Probleme ausgeführt.

Verfasst: 29.12.2007 12:04
von Andi1111
versuchs mal so:

Code: Alles auswählen

CREATE TABLE phpbb_logs ( id_log MEDIUMINT(10) NOT NULL AUTO_INCREMENT, mode VARCHAR(50) NULL DEFAULT '', topic_id MEDIUMINT(10) NULL DEFAULT '0', user_id MEDIUMINT(8) NULL DEFAULT '0', username VARCHAR(255) NULL DEFAULT '', user_ip CHAR(8) DEFAULT '0' NOT NULL, time INT(11) NULL DEFAULT '0', PRIMARY KEY (id_log))

Verfasst: 29.12.2007 12:08
von F-niX
Vielen Dank Andi1111, hat nun geklappt und der Mod funktioniert auch super!

Klasse das man hier sofort Hilfe bekommt!

Danke nochmal.

Verfasst: 29.12.2007 12:09
von 4seven
Andi1111 hat geschrieben:versuchs mal so...
Nu is klar. Wieder was gelernt :D

lg
4seven