Show sourcecode
The following files exists in this folder. Click to view.
webbserverprogrammering/submissions/projekt-matkort-handler/
.github/
add_logs.php
admin/
api/
card_balance.php
classes/
config/
food_logs.php
forgot_password.php
includes/
index.php
insert_restaurants.php
install.php
login.php
logout.php
public/
register.php
reset_password.php
verify.php
add_logs.php
67 lines UTF-8 Windows (CRLF)
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
<?php
// Script för att lägga till testloggar för alla restauranger
include_once './config/database.php';
include_once './classes/FoodLog.php';
include_once './classes/CardBalance.php';
try {
// Hitta användarens ID utifrån e-postadress
$email = 'firnab23@varmdogymnasium.se';
$stmt = $pdo->prepare("SELECT id FROM students WHERE email = ?");
$stmt->execute([$email]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if (!$user) {
die("Användaren '" . htmlspecialchars($email) . "' hittades inte i databasen.");
}
$user_id = $user['id'];
// Hämta alla restauranger från databasen
$stmt = $pdo->query("SELECT id, restaurant_name FROM restaurants");
$restaurants = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (empty($restaurants)) {
die("Inga restauranger hittades i databasen. Kan inte lägga till loggar.");
}
$foodLogModel = new FoodLogs($pdo);
$logs_added = 0;
// För varje restaurang, lägg till 2 stycken testloggar
foreach ($restaurants as $rest) {
for ($i = 0; $i < 2; $i++) {
$money_spent = rand(1, 4); // Väldigt lågt pris, max 4 kr för att inte tömma saldot för snabbt
$healthy = rand(1, 5); // Rating 1-5
$happy = rand(1, 3); // Rating 1-3
$comment = "Testlogg - Mycket gott (#" . ($i+1) . ")";
// Generera ett slumpmässigt loggdatum spritt över det senaste året
$days_ago = rand(0, 100);
$log_date = date('Y-m-d H:i:s', strtotime("-$days_ago days"));
// Skapa matlogg (Detta drar också pengar från saldot via FoodLogs classen)
$foodLogModel->create(
$user_id,
$rest['id'],
$money_spent,
$healthy,
$happy,
$comment,
$log_date
);
$logs_added++;
}
}
echo "<div style='font-family: sans-serif; padding: 20px;'>";
echo "<h1 style='color: green;'>Klart!</h1>";
echo "<p>Lade framgångsrikt till <strong>$logs_added</strong> test-loggar för användaren <em>$email</em> över " . count($restaurants) . " restauranger.</p>";
echo "<p>Kostnaden drogs medvetet ner till 1-4 kr per besök för att ditt saldo ska räcka till.</p>";
echo "<a href='./index.php'>Gå tillbaka till startsidan</a>";
echo "</div>";
} catch (Exception $e) {
echo "<h1 style='color: red;'>Ett fel uppstod</h1>";
echo "<p>" . htmlspecialchars($e->getMessage()) . "</p>";
}
?>