34109-vm/db/migrations/002_seed_users_table.php
2025-09-16 20:53:40 +00:00

50 lines
4.2 KiB
PHP

<?php
require_once __DIR__ . '/../config.php';
$players = [
['rank' => 1, 'name' => 'Alex Mercer', 'points' => 1500, 'trend' => 'up', 'img' => 'https://picsum.photos/seed/player1/100/100', 'group' => 'B3SC Strikers', 'position' => 'Forward', 'joined_date' => '2020-12-01', 'matches_played' => 98, 'wins' => 70, 'losses' => 28],
['rank' => 2, 'name' => 'Samira Khan', 'points' => 1450, 'trend' => 'up', 'img' => 'https://picsum.photos/seed/player2/100/100', 'group' => 'B3SC Defenders', 'position' => 'Defender', 'joined_date' => '2020-11-15', 'matches_played' => 102, 'wins' => 65, 'losses' => 37],
['rank' => 3, 'name' => 'Leo Martinez', 'points' => 1420, 'trend' => 'down', 'img' => 'https://picsum.photos/seed/player3/100/100', 'group' => 'B3SC Midfield', 'position' => 'Midfielder', 'joined_date' => '2021-01-05', 'matches_played' => 95, 'wins' => 60, 'losses' => 35],
['rank' => 4, 'name' => 'Chloe Davis', 'points' => 1390, 'trend' => 'same', 'img' => 'https://picsum.photos/seed/player4/80/80', 'group' => 'B3SC Strikers', 'position' => 'Forward', 'joined_date' => '2021-02-20', 'matches_played' => 90, 'wins' => 58, 'losses' => 32],
['rank' => 5, 'name' => 'Ben Carter', 'points' => 1350, 'trend' => 'up', 'img' => 'https://picsum.photos/seed/player5/80/80', 'group' => 'B3SC Midfield', 'position' => 'Midfielder', 'joined_date' => '2021-03-10', 'matches_played' => 88, 'wins' => 55, 'losses' => 33],
['rank' => 6, 'name' => 'Eva Rostova', 'points' => 1310, 'trend' => 'down', 'img' => 'https://picsum.photos/seed/player6/80/80', 'group' => 'B3SC Defenders', 'position' => 'Defender', 'joined_date' => '2021-04-01', 'matches_played' => 85, 'wins' => 52, 'losses' => 33],
['rank' => 7, 'name' => 'Daniel Park', 'points' => 1280, 'trend' => 'up', 'img' => 'https://picsum.photos/seed/player7/80/80', 'group' => 'B3SC Midfield', 'position' => 'Midfielder', 'joined_date' => '2021-05-25', 'matches_played' => 82, 'wins' => 50, 'losses' => 32],
['rank' => 8, 'name' => 'Olivia Chen', 'points' => 1250, 'trend' => 'same', 'img' => 'https://picsum.photos/seed/player8/80/80', 'group' => 'B3SC Strikers', 'position' => 'Forward', 'joined_date' => '2021-06-15', 'matches_played' => 80, 'wins' => 48, 'losses' => 32],
['rank' => 9, 'name' => 'Niko Bellic', 'points' => 1220, 'trend' => 'down', 'img' => 'https://picsum.photos/seed/player9/80/80', 'group' => 'B3SC Defenders', 'position' => 'Defender', 'joined_date' => '2021-07-01', 'matches_played' => 78, 'wins' => 45, 'losses' => 33],
['rank' => 10, 'name' => 'Jasmine Kaur', 'points' => 1190, 'trend' => 'up', 'img' => 'https://picsum.photos/seed/player10/80/80', 'group' => 'B3SC Midfield', 'position' => 'Midfielder', 'joined_date' => '2021-08-10', 'matches_played' => 75, 'wins' => 42, 'losses' => 33],
];
try {
$pdo = db();
$stmt = $pdo->prepare(
"INSERT INTO users (name, phone_number, role, rank, points, trend, img, position, joined_date, matches_played, wins, losses, `group`)
VALUES (:name, :phone_number, 'player', :rank, :points, :trend, :img, :position, :joined_date, :matches_played, :wins, :losses, :group)
ON DUPLICATE KEY UPDATE name=VALUES(name), points=VALUES(points), trend=VALUES(trend), img=VALUES(img), position=VALUES(position), joined_date=VALUES(joined_date), matches_played=VALUES(matches_played), wins=VALUES(wins), losses=VALUES(losses), `group`=VALUES(`group`);"
);
foreach ($players as $i => $player) {
// Assign a unique placeholder phone number
$phoneNumber = '+155501' . str_pad($i, 2, '0', STR_PAD_LEFT);
$stmt->execute([
':name' => $player['name'],
':phone_number' => $phoneNumber,
':rank' => $player['rank'],
':points' => $player['points'],
':trend' => $player['trend'],
':img' => $player['img'],
':position' => $player['position'],
':joined_date' => $player['joined_date'],
':matches_played' => $player['matches_played'],
':wins' => $player['wins'],
':losses' => $player['losses'],
':group' => $player['group']
]);
}
echo "Table 'users' seeded successfully." . PHP_EOL;
} catch (PDOException $e) {
die("DB ERROR: " . $e->getMessage());
}