LOL, also dann änderst du einfach wieder die ID, vom neuangelegten zur alten ID und alles ist wie vorher.
Aber da ich das Script schon vorher geschrieben habe, poste ich es natürlich trotzdem. Das wird aber nicht in mehr in eine Ilchversion einfließen.
changeuserid.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Userid ändern</title>
</head>
<body>
<?php
if (isset($_POST['submit'])) {
define('main',true);
require_once('include/includes/config.php');
require_once('include/includes/loader.php');
$ouid = escape($_POST['ouid'],'integer');
$nuid = escape($_POST['nuid'],'integer');
$login = escape($_POST['login'],'string');
$pw = md5(escape($_POST['pw'],'string'));
db_connect();
if (db_count_query("SELECT COUNT(id) FROM `prefix_user` WHERE id = 1") == 1) {
$admin = db_count_query("SELECT IF(IF(name = '$login',1,0)+IF(pass = '$pw',1,0)=2,1,0) FROM `prefix_user` WHERE id = 1");
} else {
$admin = db_count_query("SELECT IF(pass = '$pw',1,0) FROM `prefix_user` WHERE recht = -9 AND name = BINARY '$login'");
}
if ($admin == 1) {
$dbchanges = array (
array ('user', 'id'),
array ('awaycal', 'uid'),
array ('forummods', 'uid'),
array ('groups', 'mod1'),
array ('groups', 'mod2'),
array ('groups', 'mod3'),
array ('groups', 'mod4'),
array ('groupusers', 'uid'),
array ('koms', 'uid'),
array ('modulerights', 'uid'),
array ('news', 'user_id'),
array ('online', 'uid'),
array ('pm', 'sid'),
array ('pm', 'eid'),
array ('posts', 'erstid'),
array ('topic_alerts', 'uid'),
array ('userfields', 'uid'),
array ('usergallery', 'uid'),
array ('warmember', 'uid')
);
echo "<h2>Tabellen werden geändert</h2>User $ouid --> $nuid <hr />";
foreach ($dbchanges as $table) {
$abf = "UPDATE `prefix_{$table[0]}` SET `{$table[1]}` = $nuid WHERE `{$table[1]}` = $ouid";
echo "<b>SQL:</b> <i>$abf;</i><br />";
if (db_query($abf)) {
echo 'ohne Fehler durchgeführt';
} else {echo mysql_error();}
echo '<hr />';
}
db_close();
echo 'Alle Änderungen durchgeführt';
} else {
echo 'Unzulässiger Adminaccount bzw. falsches Passwort';
}
} else { ?>
<h1>Beachte</h1>
Änderungen können nur vom Admin mit der ID 1 vorgenommen werden, es sei denn es existiert kein Admin mit ID 1.<br />
Es werden <b>KEINE</b> Fehlerkontrollen durchgeführt, bei Fehlangaben kann es zu schwerwiegenden Fehlern kommen, also am besten ein Backup vorher machen ;)<br />
<pre>
<form action="changeuserid.php" method="post">
Alte ID des Users: <input type="text" name="ouid" /><br />
Neue ID des Users: <input type="text" name="nuid" /><br />
Username des Admin: <input type="text" name="login" /><br />
Passwort des Admin: <input type="password" name="pw" /><br />
<input type="submit" name="submit" value="ändern" />
</form>
</pre>
<? } ?>
</body>
</html>
*Update: Fehler behoben - 12:20Uhr 27.04.2007
Zuletzt modifiziert von Mairu am 27.04.2007 - 12:20:51