hmm, shouldn't happen normally, but try this code instead..
PHP Code:
<?php
require('global.php');
$usernames=$DB_site->query("SELECT DISTINCT username FROM post WHERE userid=0");
while ($username=$DB_site->fetch_array($usernames)) {
//does user exist?
$user=$DB_site->query_first("SELECT userid FROM user WHERE username='".addslashes($username[username])."'");
if(intval($user[userid])==0) {
$DB_site->query("INSERT INTO user (userid,username,password,joindate) VALUES (NULL,'".addslashes($username[username])."',MD5('".addslashes($username[username])."'),".time().")");
$userid=$DB_site->insert_id();
$DB_site->query("INSERT INTO userfield (userid) VALUES ($userid)");
$DB_site->query("UPDATE post SET userid=".intval($userid)." WHERE userid=0 AND username='".addslashes($username[username])."'");
} else {
$DB_site->query("UPDATE post SET userid=".intval($user[userid])." WHERE userid=0 AND username='".addslashes($username[username])."'");
}
}?>