example migration pdo from other project

This commit is contained in:
Tykayn 2021-04-08 17:41:52 +02:00 committed by tykayn
parent e1ee9c9ac8
commit 4ce426b52b
1 changed files with 32 additions and 4 deletions

View File

@ -3,8 +3,6 @@
namespace App\Controller;
use App\Entity\Poll;
use FOS\RestBundle\Controller\Annotations\Get;
use FOS\RestBundle\Controller\Annotations\Route;
/**
* Class DefaultController
@ -16,16 +14,46 @@ class MigrationController extends FramadateController {
* @Get(path ="/{unique_key}",
* name = "_migrate_from_v1")
*/
public function indexAction() {
public function indexAction( $unique_key ) {
// get env vars
// check uniq key is good
// fetch old Database
// connec
$debug = '';
$em = $this->getDoctrine()->getManager();
$pdo_options[ \PDO::ATTR_ERRMODE ] = \PDO::ERRMODE_EXCEPTION;
$bdd = new \PDO( 'mysql:host=localhost;dbname=framadate',
'useur',
'le_pass',
$pdo_options );
$reponse = $bdd->query( 'SELECT * FROM les_sondages ORDER BY id ASC LIMIT 0, 450' );
//boucler pour ranger
while ( $d = $reponse->fetch( \PDO::FETCH_OBJ ) ) {
$u = new Poll();
if ( $d->pseudo == 'PSEUDOOOOOO' ) {
$d->pseudo = "";
}
// $u->setPseudo($d->pseudo)
// ->setIp($d->ip)
// ->setAge($d->age)
// ->setsondage($s);
$em->persist( $s );
}
$em->flush();
// gather objects
// create new polls
// success
// failure notice
return $this->json( [ "message" => "welcome to the framadate migration endpoint, it has yet to be done" ],
return $this->json( [
"message" => "welcome to the framadate migration endpoint, it has yet to be done",
"debug" => $debug,
],
200 );
}