change folder structure for KA's
This commit is contained in:
19
Zweites Jahr/Klassenarbeit/LBT3/KA2/db_connect.php
Normal file
19
Zweites Jahr/Klassenarbeit/LBT3/KA2/db_connect.php
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
// DANIEL CWIKLA
|
||||||
|
function db_connect() {
|
||||||
|
require_once "db_connection.php";
|
||||||
|
|
||||||
|
$db_server = "$db_engine:dbname=$db_name;host=$db_host";
|
||||||
|
|
||||||
|
try {
|
||||||
|
$dbh = new PDO($db_server, $db_user, $db_password);
|
||||||
|
echo "<p>DB Connected</p>";
|
||||||
|
return $dbh;
|
||||||
|
}
|
||||||
|
catch(PDOException $e) {
|
||||||
|
die("<p>Error</p>");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
|
|
||||||
10
Zweites Jahr/Klassenarbeit/LBT3/KA2/db_connection.php
Normal file
10
Zweites Jahr/Klassenarbeit/LBT3/KA2/db_connection.php
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?php
|
||||||
|
// DANIEL CWIKLA
|
||||||
|
$db_engine = "mysql";
|
||||||
|
$db_name = "hardwarefuchs";
|
||||||
|
$db_host = "localhost";
|
||||||
|
$db_user = "phpmyadmin";
|
||||||
|
$db_password = "server";
|
||||||
|
?>
|
||||||
|
|
||||||
|
|
||||||
136
Zweites Jahr/Klassenarbeit/LBT3/KA2/funktionen.php
Normal file
136
Zweites Jahr/Klassenarbeit/LBT3/KA2/funktionen.php
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
<?php
|
||||||
|
// DANIEL CWIKLA
|
||||||
|
function kundeEinfuegen($dbh, $kdnr, $nachname, $email){
|
||||||
|
|
||||||
|
if($kdnr != 0 AND $nachname != '' AND $email != "") {
|
||||||
|
// JAHRESUMSATZ und RABATSTUFFE sind auf default 0.00 bzw. 0
|
||||||
|
// deswegen werden die hier nicht nochmal auf 0.00 bzw. 0 gesetzt
|
||||||
|
$query = "INSERT INTO kunde VALUES (:kdnr, :nachname, :email, 0.00, 0)";
|
||||||
|
$stmt = $dbh->prepare($query);
|
||||||
|
|
||||||
|
$stmt->bindParam(':kdnr', $kdnr);
|
||||||
|
$stmt->bindParam(':nachname', $nachname);
|
||||||
|
$stmt->bindParam(':email', $email);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$stmt->execute();
|
||||||
|
return "Kunde (Herr/Frau $nachname) wurde erstellt!";
|
||||||
|
}
|
||||||
|
catch(PDOException $e) {
|
||||||
|
$errMsg = $e->getMessage();
|
||||||
|
$errCode = $e->getCode();
|
||||||
|
|
||||||
|
switch($errCode) {
|
||||||
|
case "23000": $custErrMsg = "<p>Email-Adress already exists!</p>"; break;
|
||||||
|
default: $custErrMsg = "<p>Oooops, something went wrong!</p>";
|
||||||
|
}
|
||||||
|
echo $$errMsg;
|
||||||
|
echo $custErrMsg;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return "ERROR: missing data";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setJahresUmsatz($dbh, $kdnr, $umsatz){
|
||||||
|
if($kdnr != 0 AND $umsatz != 0) {
|
||||||
|
$query = "UPDATE kunde
|
||||||
|
SET jahresumsatz = $umsatz
|
||||||
|
WHERE :kdnr = kd_nummer";
|
||||||
|
|
||||||
|
$stmt = $dbh->prepare($query);
|
||||||
|
|
||||||
|
$stmt->bindParam(':kdnr', $kdnr);
|
||||||
|
//$stmt->bindParam(':umsatz', $umsatz);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$stmt->execute();
|
||||||
|
return "Der JAhresumsatz von Kunde ($kdnr) wurde geupdated!";
|
||||||
|
}
|
||||||
|
catch(PDOException $e) {
|
||||||
|
$errMsg = $e->getMessage();
|
||||||
|
$errCode = $e->getCode();
|
||||||
|
|
||||||
|
switch($errCode) {
|
||||||
|
case "23000": $custErrMsg = "<p>Email-Adress already exists!</p>"; break;
|
||||||
|
default: $custErrMsg = "<p>Oooops, something went wrong!</p>";
|
||||||
|
}
|
||||||
|
echo $$errMsg;
|
||||||
|
echo $custErrMsg;
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
return "ERROR: missing data";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getJahresUmsatz($dbh, $kdnr){
|
||||||
|
if($kdnr != 0){
|
||||||
|
|
||||||
|
$query = "SELECT jahresumsatz FROM kunde WHERE kd_nummer = $kdnr;";
|
||||||
|
|
||||||
|
$jahresUmsatzArray = $dbh->query($query)->fetch();
|
||||||
|
|
||||||
|
return $jahresUmsatzArray[0];
|
||||||
|
} else {
|
||||||
|
return "ERROR: missing data";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setAllRabattStufen($dbh){
|
||||||
|
$getAllKunden = "SELECT * FROM kunde;";
|
||||||
|
|
||||||
|
$allKunden = $dbh->query($getAllKunden)->fetchAll();
|
||||||
|
|
||||||
|
foreach($allKunden as $kunde) {
|
||||||
|
$rabatt = 0;
|
||||||
|
$umsatz = $kunde[3];
|
||||||
|
$kdnr = $kunde[0];
|
||||||
|
|
||||||
|
echo "umsatz, kdnr";
|
||||||
|
echo $umsatz;
|
||||||
|
echo "---";
|
||||||
|
echo $kdnr;
|
||||||
|
echo "-----";
|
||||||
|
if($umsatz > 250000.0){
|
||||||
|
$rabatt = 25;
|
||||||
|
} else if ($umsatz > 100000.0) {
|
||||||
|
$rabatt = 15;
|
||||||
|
}
|
||||||
|
else if ($umsatz > 50000.0) {
|
||||||
|
$rabatt = 10;
|
||||||
|
}
|
||||||
|
else if ($umsatz > 10000.0) {
|
||||||
|
$rabatt = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
$updateRabattStufeQuery = "UPDATE kunde
|
||||||
|
SET rabattstufe = :rabatt
|
||||||
|
WHERE :kdnr = kd_nummer";
|
||||||
|
|
||||||
|
$stmt = $dbh->prepare($updateRabattStufeQuery);
|
||||||
|
|
||||||
|
$stmt->bindParam(':kdnr', $kdnr);
|
||||||
|
$stmt->bindParam(':rabatt', $rabatt);
|
||||||
|
|
||||||
|
echo $rabatt;
|
||||||
|
|
||||||
|
try {
|
||||||
|
$stmt->execute();
|
||||||
|
echo "Die Rabattstufe von Kunde ($kdnr) wurde geupdated!";
|
||||||
|
}
|
||||||
|
catch(PDOException $e) {
|
||||||
|
$errMsg = $e->getMessage();
|
||||||
|
$errCode = $e->getCode();
|
||||||
|
|
||||||
|
switch($errCode) {
|
||||||
|
case "23000": $custErrMsg = "<p>Email-Adress already exists!</p>"; break;
|
||||||
|
default: $custErrMsg = "<p>Oooops, something went wrong!</p>";
|
||||||
|
}
|
||||||
|
echo $$errMsg;
|
||||||
|
echo $custErrMsg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
51
Zweites Jahr/Klassenarbeit/LBT3/KA2/hardwarefuchs.sql
Normal file
51
Zweites Jahr/Klassenarbeit/LBT3/KA2/hardwarefuchs.sql
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
-- phpMyAdmin SQL Dump
|
||||||
|
-- version 5.1.1deb5ubuntu1
|
||||||
|
-- https://www.phpmyadmin.net/
|
||||||
|
--
|
||||||
|
-- Host: localhost:3306
|
||||||
|
-- Generation Time: May 19, 2026 at 02:41 PM
|
||||||
|
-- Server version: 10.6.21-MariaDB-0ubuntu0.22.04.2
|
||||||
|
-- PHP Version: 8.1.2-1ubuntu2.21
|
||||||
|
|
||||||
|
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||||
|
START TRANSACTION;
|
||||||
|
SET time_zone = "+00:00";
|
||||||
|
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Database: `hardwarefuchs`
|
||||||
|
--
|
||||||
|
CREATE DATABASE IF NOT EXISTS `hardwarefuchs` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||||
|
USE `hardwarefuchs`;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `kunde`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `kunde` (
|
||||||
|
`kd_nummer` int(11) NOT NULL,
|
||||||
|
`nachname` varchar(50) NOT NULL,
|
||||||
|
`email` varchar(100) NOT NULL,
|
||||||
|
`jahresumsatz` float NOT NULL DEFAULT 0,
|
||||||
|
`rabattstufe` int(11) NOT NULL DEFAULT 0
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `kunde`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `kunde` (`kd_nummer`, `nachname`, `email`, `jahresumsatz`, `rabattstufe`) VALUES
|
||||||
|
(1, 'daniel', 'daniel@daniel.com', 50000.7, 10),
|
||||||
|
(2, 'daniel2', 'daniel2@danielvici.com', 0, 0);
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
28
Zweites Jahr/Klassenarbeit/LBT3/KA2/kunde_neu.php
Normal file
28
Zweites Jahr/Klassenarbeit/LBT3/KA2/kunde_neu.php
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Neuer Kunde</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>DANIEL CWIKLA</h1>
|
||||||
|
<form>
|
||||||
|
<label>Kundennummer: <input name="kdnr" type="number"></label><br>
|
||||||
|
<label>Nachname: <input name="nachname" type="text"></label><br>
|
||||||
|
<label>E-Mail: <input name="email" type="email"></label><br>
|
||||||
|
<button type="submit">Anlegen</button>
|
||||||
|
</form>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
// DANIEL CWIKLA
|
||||||
|
require_once 'funktionen.php';
|
||||||
|
require_once 'db_connect.php';
|
||||||
|
|
||||||
|
if(!empty($_REQUEST)){
|
||||||
|
$dbh = db_connect();
|
||||||
|
echo kundeEinfuegen($dbh, $_REQUEST['kdnr'], $_REQUEST['nachname'], $_REQUEST['email']);
|
||||||
|
}
|
||||||
|
?>
|
||||||
26
Zweites Jahr/Klassenarbeit/LBT3/KA2/test.php
Normal file
26
Zweites Jahr/Klassenarbeit/LBT3/KA2/test.php
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
// DANIEL CWIKLA
|
||||||
|
require_once 'funktionen.php';
|
||||||
|
require_once 'db_connect.php';
|
||||||
|
|
||||||
|
$dbh = db_connect();
|
||||||
|
|
||||||
|
$kdnr = 1;
|
||||||
|
$umsatz = 50000.676;
|
||||||
|
|
||||||
|
echo "<h2>setJahresUmsatz</h2>";
|
||||||
|
echo "<p>Kundennummer: $kdnr</p>";
|
||||||
|
echo "<p>Neuer Umsatz: $umsatz</p>";
|
||||||
|
|
||||||
|
echo setJahresUmsatz($dbh, $kdnr, $umsatz);
|
||||||
|
|
||||||
|
echo "<h2>getJahresUmsatz</h2>";
|
||||||
|
|
||||||
|
echo "<p>Jahresumsaz: ";
|
||||||
|
// php rundet automatisch: "... num is rounded to decimals significant digits before the decimal point."
|
||||||
|
// https://www.php.net/manual/en/function.number-format.php
|
||||||
|
echo number_format(getJahresUmsatz($dbh, $kdnr),2);
|
||||||
|
echo "€ </p>";
|
||||||
|
|
||||||
|
echo "<p>setAllRabattStufen: ";
|
||||||
|
echo setAllRabattStufen($dbh);
|
||||||
Reference in New Issue
Block a user