myRootFolio

Mijn Projecten

Bekijk mijn werk en ontdek de projecten die ik heb ontwikkeld met PHP, SQL en andere webtechnologieën.

Projecten

Puntensysteem voor Orange Techniekers

Dit systeem stelt zelfstandige techniekers in staat om hun dagelijkse inkomsten te berekenen op basis van de punten die ze verdienen voor hun werk.

Volledige PHP Code


<?php
$action_data = array(
    "complex_drop" => array("points" => 2.49, "cost" => 87.07),
    "normal_move" => array("points" => 1.34, "cost" => 47.10),
    "extra_install" => array("points" => 0.29, "cost" => 10.19),
    "street_intervention" => array("points" => 0.29, "cost" => 10.19),
    "normal_install" => array("points" => 1.35, "cost" => 47.10),
    "repair" => array("points" => 1.09, "cost" => 38.22),
    "repair_lvl2" => array("points" => 1.23, "cost" => 43.22),
    "simple_drop" => array("points" => 1.69, "cost" => 59.22),
    "simple_install" => array("points" => 0.95, "cost" => 33.50),
    "simple_move" => array("points" => 0.95, "cost" => 33.50)
);

function updatePointsAndMoney($conn, $userId, $pointsToAdd, $costToAdd, $actionName) {
    $sql_update = "UPDATE users SET points = points + $pointsToAdd, money = money + $costToAdd WHERE id = $userId";
    if ($conn->query($sql_update) === TRUE) {
        $today = date("Y-m-d");
        $sql_insert = "INSERT INTO user_points (user_id, points, cost, action_name, date) VALUES ($userId, $pointsToAdd, $costToAdd, '$actionName', '$today')";
        if ($conn->query($sql_insert) === TRUE) {
            echo "Punten met succes toegevoegd!";
        } else {
            echo "Error updating points and cost: " . $conn->error;
        }
    } else {
        echo "Error updating points and cost: " . $conn->error;
    }
}

if (isset($_POST["action"])) {
    $action = $_POST["action"];
    if (array_key_exists($action, $action_data)) {
        $pointsToAdd = $action_data[$action]["points"];
        $costToAdd = $action_data[$action]["cost"];
        $actionName = ucfirst(str_replace("_", " ", $action));
        updatePointsAndMoney($conn, $_SESSION["user_id"], $pointsToAdd, $costToAdd, $actionName);
    } else {
        echo "Invalid action.";
    }
}

function getTodayPoints($conn, $userId) {
    $today = date("Y-m-d");
    $sql = "SELECT SUM(points) AS total_points FROM user_points WHERE user_id = $userId AND date = '$today'";
    $result = $conn->query($sql);
    $row = $result->fetch_assoc();
    return $row["total_points"];
}
?>
            

TaskHub - Persoonlijk Takenbeheer

TaskHub is een fictieve webapplicatie gebouwd als showcase voor gebruikersauthenticatie, takenbeheer en een modern UI ontwerp met PHP, MySQLi en Tailwind CSS.

Dit project is louter bedoeld als demonstratie voor mijn portfolio en wordt niet verder actief ontwikkeld.

Loginpagina TaskHub Dashboard TaskHub
Bekijk Demo

MafiaStreets Online RPG

MafiaStreets is een uitgebreide 1930s-mafia browsergame met een diep opleidings-, misdaad- en economisch systeem. De speler kan trainen, misdaden plegen, fabrieken bouwen, werknemers aannemen, items craften, deelnemen aan NPC-gevechten, medailles behalen en veel meer.

Het project bevat een volledige backend met PHP, SQL, aangepaste cron-systemen, NPC AI, premium shop, item crafting, fabriekslogica, Underworld Tutors, casino, ranksysteem, anti-bot systeem en een moderne front-end UI met Tailwind en eigen CSS-thema.

Dit project wordt actief ontwikkeld en uitgebreid met nieuwe systemen, UI-designs en gameplay-mechanieken.

Bekijk Live Game

Bitcoin Web Scraper (Python)

Deze web scraper is gebouwd in Python en haalt real-time Bitcoin prijzen op van een openbare API. Het project toont mijn vaardigheden in data scraping, API-gebruik en dynamische data-visualisatie.

Op deze pagina vind je zowel een live simulatie als de volledige Python code.

Live simulatie

$--.--

Gesimuleerde Bitcoin-prijsupdates (elke 5 seconden vernieuwd).

Bekijk Project

Sneeuw Effect

Dit project creëert een visueel sneeuw-effect op de achtergrond van een webpagina, met behulp van JavaScript en CSS. Het sneeuw-effect is dynamisch en de sneeuwvlokken vallen willekeurig, wat zorgt voor een winterse sfeer.

Dit effect kan worden aangepast voor verschillende doeleinden, zoals een winterthema of een feestelijke uitstraling.

Bekijk Demo

SQL Database Project

In dit project toon ik mijn vaardigheden in het ontwerpen van databases, werken met relaties tussen tabellen en schrijven van efficiënte SQL-queries.

Bekijk Project