Hallo,
habe jetzt auch mal eine Frage nachdem ich hier schon viel gelesen habe.
Möchte in die DB eines phpbb 3.0.3 erstmal mehrere handvoll User importieren. Die User stammen aus einem anderen Forum, die wichtigsten Daten habe ich hier in einer lokalen DB.
Stehe jetzt vor dem Problem dass ich an dem Feld user_permissions scheitere. Lasse ich das weg, kommt die Meldung 'Spalte hat keinen Default-Wert', versuche ich da was reinzuschreiben kommt die Meldung 'Spalte erlaubt keine NULL-Werte', jeweils sinngemäss.
Kontakt zur Datenbank und Füllen der anderen Felder ist kein Problem. Habe mir ein paar Zeilen mit VB geschrieben. Habe auch schon ADO.Stream probiert (wie hier beschrieben http://dev.mysql.com/tech-resources/art ... dling.html), geht auch nicht, Meldung wie oben.
Wie kann ich die Spalte füllen, jemand ne Idee?
Import in Datenbank von Extern
lege dir 2 Testuser im phpBB3 an und schaue was da rein geschrieben wird, versuche das Muster zu erkennen und mache es nach.
Schreibe bitte über deine Erkenntnisse, ich wüsste es Momentan auch nicht.
Es gibt aber soweit ich weiß auch eine phpBB Funktion zum User hinzufügen, glaube die heist addUser oder so
Schreibe bitte über deine Erkenntnisse, ich wüsste es Momentan auch nicht.
Es gibt aber soweit ich weiß auch eine phpBB Funktion zum User hinzufügen, glaube die heist addUser oder so

Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Standardmäßig antworte ich nicht auf PMs
Es geht nicht darum dass ich nicht wüsste, was da rein soll, es gelingt mir nicht da einen User hinzuzufügen, beim Versuch eine Zeile hinzuzufügen kommt ein Fehler.
Die Spalte ist definiert als
in der Ansicht in phpMyAdmin wird nur 'BLOB' angezeigt.
Die Spalte ist definiert als
Code: Alles auswählen
`user_permissions` mediumtext collate utf8_bin NOT NULL,
Hallo Dufftown,
du könntest hergehen und einen Testuser ganz normal über die Registrierung anlegen, dann hast du die Angaben, welche in die einzelnen Spalten der phpbb_users rein müssen. Übrigens wird auch in der phpbb_user_group ein Eintrag gemacht.
Wenn im phpmyadmin das Feld nur als 'BLOB' angezeigt wird, dann such mal in der config.inc.php nach
da kannst du das einstellen was angezeigt werden soll.
Gruß Helmut
du könntest hergehen und einen Testuser ganz normal über die Registrierung anlegen, dann hast du die Angaben, welche in die einzelnen Spalten der phpbb_users rein müssen. Übrigens wird auch in der phpbb_user_group ein Eintrag gemacht.
Wenn im phpmyadmin das Feld nur als 'BLOB' angezeigt wird, dann such mal in der config.inc.php nach
Code: Alles auswählen
[...]
$cfg['ShowBlob'] = TRUE; // display blob field contents
[...]
$cfg['ProtectBinary'] = FALSE; // disallow editing of binary fields
// valid values are:
// FALSE allow editing
// 'blob' allow editing except for BLOB fields
// 'all' disallow editing
[...]
Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Hallo Helmut,
danke für den Tip wegen der Tabelle user_group, so weit bin ich noch gar nicht weil ich in user nichts hinzufügen kann.
Die Konfigurationsmöglichkeit für phpMyAdmin ist auch interessant, aber das ist auch nicht mein Problem.
Habe ich mich so missverständlich ausgedrückt?
Dann noch mal ...
Ich will per Programm einige User anlegen (die stammen aus einem anderen Forum), das Programm hat die Informationen aus einer lokalen Datenbank und kann sich auch mit der mySQL-DB verbinden.
Der Einfachheit halber soll das Programm die Einträge in der Usertabelle machen. Es sind auch zu viele User um das per Hand zu machen.
Ich denke ich weiss auch was ich da rein schreiben muss, aber selbst wenn ich mich da täusche, das ist zur Zeit nicht mein Problem. Ich kann einfach gar keine neue Zeile in die Tabelle schreiben.
Aus den vorhandenen Einträgen kann ich die Spalte user_permissions lesen, habe ich mit ADO.Stream in eine Datei geschrieben und will nun den gleichen Wert bei den neuen Usern reinschreiben.
Habe dazu folgenden Code:
Führe ich das aus, kommt bei rs.Update die Fehlermeldung 'Spalte user_permissions darf nicht NULL sein', obwohl in rs.Fields("user_permissions") der richtige Wert reingelesen wurde.
Kommentiere ich die Zeile mit rs.Fields("user_permissions") aus, bekomme ich den Fehler 'Spalte user_permissions hat keinen Default-Wert. Das kann ich sogar noch nachvollziehen, aber was ist da im ersten Fall los? Die Meldung heisst doch eigentlich, dass ich da gar nichts reinschreibe?
danke für den Tip wegen der Tabelle user_group, so weit bin ich noch gar nicht weil ich in user nichts hinzufügen kann.

Die Konfigurationsmöglichkeit für phpMyAdmin ist auch interessant, aber das ist auch nicht mein Problem.
Habe ich mich so missverständlich ausgedrückt?

Ich will per Programm einige User anlegen (die stammen aus einem anderen Forum), das Programm hat die Informationen aus einer lokalen Datenbank und kann sich auch mit der mySQL-DB verbinden.
Der Einfachheit halber soll das Programm die Einträge in der Usertabelle machen. Es sind auch zu viele User um das per Hand zu machen.
Ich denke ich weiss auch was ich da rein schreiben muss, aber selbst wenn ich mich da täusche, das ist zur Zeit nicht mein Problem. Ich kann einfach gar keine neue Zeile in die Tabelle schreiben.
Aus den vorhandenen Einträgen kann ich die Spalte user_permissions lesen, habe ich mit ADO.Stream in eine Datei geschrieben und will nun den gleichen Wert bei den neuen Usern reinschreiben.
Habe dazu folgenden Code:
Code: Alles auswählen
rs.AddNew
... (mehrere Felder)
Set st = New ADODB.Stream
st.Type = adTypeText
st.Open
st.LoadFromFile App.Path & "\user_permissions.txt"
rs.Fields("user_permissions") = st.ReadText
rs.Update
Kommentiere ich die Zeile mit rs.Fields("user_permissions") aus, bekomme ich den Fehler 'Spalte user_permissions hat keinen Default-Wert. Das kann ich sogar noch nachvollziehen, aber was ist da im ersten Fall los? Die Meldung heisst doch eigentlich, dass ich da gar nichts reinschreibe?
Re: Import in Datenbank von Extern
So, das hab ich jetzt endlich mal gelöst.
Schuld war der blöde ODBC-Treiber für mySQL in der Version 5.1.x, der macht nur Mist.
Hab den mal rausgeschmissen und die Version 3.51.27 genommen, damit klappt das jetzt alles was ich will.
Also bis zum nächsten Problem.

Schuld war der blöde ODBC-Treiber für mySQL in der Version 5.1.x, der macht nur Mist.
Hab den mal rausgeschmissen und die Version 3.51.27 genommen, damit klappt das jetzt alles was ich will.
Also bis zum nächsten Problem.
Meine SQL-Statements sind immer ohne Tabellen-Prefix. Also ggf. "phpbb_" oder Euer Prefix einfügen.
KEIN Support auf unaufgeforderte PN
KEIN Support auf unaufgeforderte PN