';
/*-------------------- USERS --------------------*/
$idAssos = array();
echo '[' . date ( 'H:i:s' ) . ']' . 'Table users
';
$rep = $GLOBALS ['bdd']->query ( 'SELECT * FROM users ORDER BY ID' );
$users = array ();
while ( $user = $rep->fetch () ) {
echo '----' . $user ['ID'] . ':"' . $user ['pseudo'] . '";"' . $user ['mdp'] . '";' . $user ['date_creation'] . ';' . $user ['administration'] . '
';
$users [] = $user;
}
$rep->closeCursor ();
$GLOBALS ['bdd']->exec ( 'TRUNCATE TABLE users' );
echo '[' . date ( 'H:i:s' ) . ']' . 'Table users effacée
';
$currentID = 1;
foreach ( $users as $u ) {
$req = $GLOBALS['bdd']->prepare('INSERT INTO users(pseudo,mdp,date_creation,administration) VALUES (?,?,?,?)');
$req->execute(array($u ['pseudo'],$u ['mdp'], $u ['date_creation'], $u ['administration']));
$idAssos[$u['ID']] = $currentID;
$currentID +=1;
echo '----' . $u ['ID'] . '->' . $idAssos[$u['ID']] . '
';
}
echo '[' . date ( 'H:i:s' ) . ']' . 'Pseudos réinsérés triés par ID
';
/*-------------------- PROJETS --------------------*/
$pidAssos = array();
echo '[' . date ( 'H:i:s' ) . ']' . 'Table projets
';
$rep = $GLOBALS ['bdd']->query ( 'SELECT * FROM projets ORDER BY ID' );
$projects = array ();
while ( $project = $rep->fetch () ) {
echo '----' . $project ['ID'] . ':"' . $project['name'] . '";"' . $project ['ownersID'] . '";' . $project ['permissions'] . '
';
$projects[] = $project;
}
$rep->closeCursor();
$GLOBALS ['bdd']->exec ( 'TRUNCATE TABLE projets' );
echo '[' . date ( 'H:i:s' ) . ']' . 'Table projets effacée
';
$currentID = 1;
foreach ( $projects as $p ) {
$ownersID = explode(';',$p['ownersID']);
$ownersNewID = array();
foreach($ownersID AS $o){
if(isset($idAssos[$o])){
$ownersNewID[] = $idAssos[$o];
}
}
$newOwnersID = implode(';',$ownersNewID);
if(count($ownersNewID)<=0){
echo '####################' . 'Le projet '.print_r($p,TRUE).' n\'a aucun possésseur
';
}else{
echo '--------' . 'Owners :'.$p['ownersID'].' à '.$newOwnersID.'
';
}
$req = $GLOBALS['bdd']->prepare('INSERT INTO projets(name,ownersID,permissions) VALUES (?,?,?)');
$req->execute(array($p ['name'],$newOwnersID,$p['permissions']));
$pidAssos[$p['ID']] = $currentID;
$currentID +=1;
echo '----' . $p ['ID'] . '->' . $pidAssos[$p['ID']] . '
';
}
echo '[' . date ( 'H:i:s' ) . ']' . 'Projets réinsérés triés par ID
';
/*-------------------- VERSIONS --------------------*/
$vidAssos=array();
echo '[' . date ( 'H:i:s' ) . ']' . 'Table versions
';
$rep = $GLOBALS ['bdd']->query ( 'SELECT * FROM versions ORDER BY id' );
$versions = array ();
while ( $version = $rep->fetch () ) {
echo '----' . $version ['id'] . ':' . $version['project_id'] . ';"' . $version ['version'] . '";"' . $version ['versionAbs'].'";'.$version['language'] . '
';
$versions[] = $version;
}
$rep->closeCursor();
$GLOBALS ['bdd']->exec ( 'TRUNCATE TABLE versions' );
echo '[' . date ( 'H:i:s' ) . ']' . 'Table versions effacée
';
$currentID = 1;
foreach ( $versions as $v ) {
$newProjectId=$pidAssos[$v['project_id']];
$req = $GLOBALS['bdd']->prepare('INSERT INTO versions(project_id,version,versionAbs,language) VALUES (?,?,?,?)');
$req->execute(array($pidAssos,$v ['version'],$v['versionAbs'],$v ['language']));
$vidAssos[$v['id']] = $currentID;
$currentID +=1;
echo '----' . $v ['id'] . '->' . $vidAssos[$v['id']] . '
';
}
echo '[' . date ( 'H:i:s' ) . ']' . 'Versions réinsérés triés par ID
';
} catch ( Exception $e ) {
echo $GLOBALS['bdd']->error;
}
}
end:
?>