PHP/MySQL andmebaasiga töötamine

Loo andmebaas ja kasutaja XAMPP-is

Andmebaasiga liitumine PhpStormi kaudu

Konfiguratsiooni fail:

<?php
$kasutaja="anton";
$parool="123456";
$andmebaas="anton";
$serverinimi="localhost";

$yhendus=new mysqli($serverinimi,$kasutaja,$parool,$andmebaas);
$yhendus->set_charset("utf8");

Iseseisev töö

Lisame tabeli XAMPP-is

Create table osalejad(
                         id int Primary key AUTO_INCREMENT,
                         nimi varchar(20),
                         telefon varchar(30),
                         pilt text,
                         synniaeg date
);

Loo leht kasutajate lisamiseks matkale: * nimi, telefon, pilt, synniaeg

if(isset($_REQUEST["nimi"]) && !empty($_REQUEST["nimi"])){
    $paring=$yhendus->prepare("INSERT INTO osalejad(nimi, telefon, pilt, synniaeg)
VALUES (?, ?, ?, ?)");
    $paring->bind_param("ssss", $_REQUEST["nimi"], $_REQUEST["telefon"], $_REQUEST["pilt"], $_REQUEST["synniaeg"]);
    $paring->execute();
}

 Samal lehel näita kes on matkale registreerinud koos pildiga. Info näidatakse tabeline

<?php
    $paring=$yhendus->prepare("SELECT id, nimi, telefon, pilt, synniaeg FROM osalejad");
    $paring->bind_result($id, $nimi, $telefon, $pilt, $synniaeg);
    $paring->execute();
    while($paring->fetch()){
        $vanus = kalk($synniaeg);
        echo "<tr>";
        echo "<td><a href='?kustuta=$id'>Kustuta</a></td>";
        echo "<td>".$id."</td>";
        echo "<td>".htmlspecialchars($nimi)."</td>";
        echo "<td>".htmlspecialchars($telefon)."</td>";
        echo "<td><img src='$pilt' alt='pilt' width='100px'></td>";
        echo "<td>".htmlspecialchars($synniaeg)."</td>";
        echo "<td>".$vanus."</td>";
        echo "</tr>";
    }
    ?>

Lisa tabelisse osaleja kustutamine

//kustutamine
if(isset($_REQUEST["kustuta"])){
    $kask=$yhendus->prepare("DELETE FROM osalejad WHERE id=?");
    $kask->bind_param("i",$_REQUEST["kustuta"]);
    $kask->execute();
}

Vanuse arvutamine

function kalk($birthDate) {
    $synnipaev = new DateTime($birthDate);
    $current = new DateTime();
    $vanus = $synnipaev->diff($current);
    return $vanus->y;
}

Scroll to Top