36 lines
860 B
PHP
36 lines
860 B
PHP
<?php
|
|
require_once __DIR__ . '/db/config.php';
|
|
|
|
function generate_code($length = 6) {
|
|
$chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
|
$code = '';
|
|
for ($i = 0; $i < $length; $i++) {
|
|
$code .= $chars[rand(0, strlen($chars) - 1)];
|
|
}
|
|
return $code;
|
|
}
|
|
|
|
$pdo = db();
|
|
$session_code = '';
|
|
$is_unique = false;
|
|
|
|
// Generate a unique code
|
|
while (!$is_unique) {
|
|
$session_code = generate_code();
|
|
$stmt = $pdo->prepare("SELECT id FROM sessions WHERE session_code = ?");
|
|
$stmt->execute([$session_code]);
|
|
if ($stmt->rowCount() === 0) {
|
|
$is_unique = true;
|
|
}
|
|
}
|
|
|
|
// Insert the new session
|
|
$stmt = $pdo->prepare("INSERT INTO sessions (session_code) VALUES (?)");
|
|
$stmt->execute([$session_code]);
|
|
|
|
$session_id = $pdo->lastInsertId();
|
|
|
|
// Redirect to the session page
|
|
header("Location: session.php?id=" . $session_id);
|
|
exit();
|