Archiv verlassen und diese Seite im Standarddesign anzeigen : Externe Registrierung
Ich möchte User-Accounts in meinem vBB extrern anlegen.
Wenn ich allderings einen user inizialisieren, indem ich in den "user" Table username, password, mail, regdate und usergroup adde, kommt immer der fehler, dass keine UserID existiert?!
Wieso ist das so?
Ein paar mehr Details musst du uns schon geben, um dir zu helfen...
Wie sieht der Code aus, den du verwendest?
Außerdem darfst du nicht vergessen, gleichzeitig einen Eintrag in userfield mit der UserID vorzunehmen...nicht nur in user.
<?php
// Hier ist die verbindung zur DB
$data_sql = MySQL_Query("SELECT * FROM members");
while ($data = MySQL_Fetch_Array($data_sql)) {
MySQL_Query(INSERT INTO user (usergroup, username, mail, password, etc) VALUES('$data[bla]','$data[bla2]', etc.));
}
echo "User wurden hinzugefügt";
?>
Frage: Wieso muss auch in die userfield was eingetragen werden? Ich habe dafür ja keine daten? Oder muss es auch, wenn keine Daten vorhanden sind?
Original geschrieben von Feed
kommt immer der fehler, dass keine UserID existiert?!Wo und wann kommt der Fehler? Wie lautet die genaue Fehlermeldung?
Probier's mal mit sowas in der Art....<?php
// Hier ist die verbindung zur DB
$data_sql = MySQL_Query("SELECT * FROM members");
while ($data = MySQL_Fetch_Array($data_sql)) {
MySQL_Query("INSERT INTO user (userid,usergroupid, username, mail, password, etc) VALUES(NULL, 2, '$data[bla]','$data[bla2]', etc.");
}
echo "User wurden hinzugefügt";
?>Mit mysql_insert_id (http://www.php.net/manual/de/function.mysql-insert-id.php) bekommst du die neue UserID. Diese musst du dann in userfield einfügen!
INSERT INTO userfield (userid) VALUES ($userid);
Ok, werde ich gleich mal testen. Danke schonmal für die schnelle und nette Hilfe!
*update I*
Code Fertig:
<?php
$DB_Host = "";
$DB_User = "";
$DB_Pass = "";
$database = "";
MySQL_Connect($DB_Host, $DB_User, $DB_Pass) or die ("Konnte keine Verbindung zur Datenbank herstellen !");
MySQL_Select_DB($database);
echo "Add Users To System...<br>";
$wmdata_sql = MySQL_Query("SELECT * FROM wm_members") or die("MySQL ERROR (".__LINE__."):".mysql_error());;
while ($wmdata = MySQL_Fetch_Array($wmdata_sql)) {
MySQL_Query("INSERT INTO user (userid,usergroupid, username, email, password, joindate) VALUES ('NULL', '2', '$wmdata[mem_username]','$wmdata[mem_mail]','$wmdata[mem_passwort]', '1053851209')") or die("MySQL ERROR (".__LINE__."):".mysql_error());;
$varid = mysql_insert_id();
MySQL_Query("INSERT INTO userfield (userid) VALUES ('$varid')") or die("MySQL ERROR (".__LINE__."):".mysql_error());;
echo "User: $wmdata[mem_username] has been added...<br>";
}
echo "<br>All done!";
?>
*update II*
Funktioniert Prima!
vBulletin® v3.7.4, Copyright ©2000-2008, Jelsoft Enterprises Ltd.