Compare commits

...

11 Commits
dev ... master

Author SHA1 Message Date
eca46f5128 klar med moment 4 2024-09-23 12:08:18 +02:00
81ab5332e2 done with moment 3 2024-09-16 10:26:33 +02:00
4b69e73f65 m3 2024-09-13 16:45:04 +02:00
059d9d5e20 klkl 2024-08-30 15:46:36 +02:00
b681df46d1 kakaka 2024-08-23 16:00:16 +02:00
3df4a0f590 please 2024-08-23 15:57:59 +02:00
3e28c02ccb ett bra försök 2 2024-08-23 14:51:58 +02:00
99f1438f77 a 2024-08-23 14:45:19 +02:00
c6d1d90c49 fungera 2024-08-23 14:41:42 +02:00
da39c47411 inasdsa 2024-08-23 14:38:28 +02:00
527ea6d966 lets go 2024-08-23 14:22:01 +02:00
28 changed files with 528 additions and 24 deletions

0
www/msg.dat Normal file
View File

View File

@ -0,0 +1,32 @@
<!DOCTYPE html>
<html lang="sv">
<head>
<meta charset="UTF-8" />
<title>Quiz med Formulär och PHP</title>
</head>
<body>
<h1>Resultat</h1>
<?php
$points = 0;
$ansOne = $_POST['qOne'];
$ansTwo = $_POST['qTwo'];
if($ansOne == 'php')
$points++;
if($ansTwo == 'js')
$points++;
echo '<strong>Du fick '.$points.' av 2 möjliga</strong>';
$id = $_GET['id'];
$name = $_GET['name'];
$age = $_GET['age'];
echo '<p>Du är '.$age.' och heter '.$name.' och har id '.$id.'</p>';
echo '<p>Det här är ett test</p>';
echo '<p>Försök två att inte ha merge conflicts</p>';
echo '<p>Försök 3</p>';
?>
</body>
</html>

View File

@ -7,7 +7,7 @@
<body>
<?php
$file = "../../../user.dat";
$file = "../../../userM2.dat";
function addUser($newUser, $file) {

View File

@ -1,25 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
function cleanData($data) {
mb_internal_encoding("UTF-8");
if(!mb_check_encoding($data)){
header('Location: start.php');
}
$data = strip_tags($data);
$data = htmlspecialchars($data);
$data = trim($data);
$data = stripslashes($data);
return $data;
<?php
function cleanData($data)
{
mb_internal_encoding("UTF-8");
if (!mb_check_encoding($data)) {
header('Location: start.php');
}
$data = strip_tags($data);
$data = htmlspecialchars($data);
$data = trim($data);
$data = stripslashes($data);
return $data;
}
?>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

View File

@ -0,0 +1,137 @@
@CHARSET "UTF-8";
* {
margin:0;
padding:0;
font-family:Verdana, Geneva, sans-serif;
}
body{
font-size: 100%;
}
p {
font-size: 0.8em;
margin-bottom: 10px;
margin-top: 5px;
margin-right: 10px;
text-align: justify;
}
/* Wrapper */
#wrapper {
width: 800px;
margin-left: auto;
margin-right:auto;
margin-top:10px;
border: 2px solid rgba(0,0,0,0.8);
}
/* End wrapper */
/* Header */
header {
text-align:center;
height: 60px;
background-image: url("../bilder/bgImg.png");
color: white;
}
header h1{
font-family: Arial;
font-size: 1.9em;
padding-top: 0.25em;
}
header time{
float: right;
margin-right: 2em;
font-size: 0.8em;
}
/* End header */
nav{
border-radius: 5px; /* CSS3 */
border: 1px solid #999;
padding: 4px;
margin-bottom:5px;
}
nav ul {
list-style:none;
}
nav li{
margin-top: 5px;
border: 1px solid #000;
}
nav li a{
display:block;
font-size: 0.8em;
text-decoration: none;
color: #aa0000;
padding-left: 15px;
background-color:#FFC;
}
nav li a:hover, #leftColumn li a:active, #leftColumn li a:focus{
background-color: gray;
color: #ffffff;
}
aside {
-moz-border-radius: 5px; /* Ger rundade hörn i Firefox */
border-radius: 5px; /* CSS3 */
border: 1px solid #999;
padding: 4px;
margin-bottom:5px;
}
aside p {
font-size: 0.8em;
}
/* leftColumn */
#leftColumn {
float: left;
width: 180px;
margin: 8px;
}
#leftColumn h1 {
font-family:Arial, Helvetica, sans-serif;
font-size: 0.9em;
}
/* End leftColumn */
/* Main */
main {
margin-top: 8px;
margin-left:200px;
}
main h1{
font-family: Arial, Helvetica, sans-serif;
font-size: 1.4em;
}
main h2{
font-family: Arial, Helvetica, sans-serif;
font-size: 1.1em;
}
main section{
float:right;
width: 99%;
}
form label,a{
font-size: 0.8em;
}
/* End content */
/* Footer */
footer {
height: 30px;
background-image: url("../bilder/bgImg.png");
color: white;
font-size: 0.75em;
clear:both;
}
footer #footerRight{
float:right;
padding: 5px;
}
footer #footerLeft{
float:left;
padding: 5px;
}
/* End footer */

View File

@ -0,0 +1,24 @@
<?php
$file = "../../userM3.dat";
function addUser($newUser, $file) {
if(file_exists($file)){
$users = unserialize(file_get_contents($file));
$users[] = $newUser;
file_put_contents($file, serialize($users));
} else {
$users = array();
$users[] = $newUser;
file_put_contents($file, serialize($users));
}
}
function readUserData($file) {
if(file_exists($file)){
$users = unserialize(file_get_contents($file));
}
return $users;
}
?>

View File

@ -0,0 +1,11 @@
<?php
$hit = 0;
if (file_exists("../../hit.dat")) {
$hit = file_get_contents("../../hit.dat");
}
$hit++;
file_put_contents("../../hit.dat", $hit);
echo "Antal användare: " . $hit;
?>

View File

@ -0,0 +1,17 @@
<?php
function cleanData($data)
{
mb_internal_encoding("UTF-8");
if (!mb_check_encoding($data)) {
header('Location: start.php');
}
$data = strip_tags($data);
$data = htmlspecialchars($data);
$data = trim($data);
$data = stripslashes($data);
return $data;
}
?>

View File

@ -0,0 +1,11 @@
<?php
include('cleanData.php');
if(isset($_POST['message']) && $_SESSION['CSRFToken'] === $_POST['CSRFToken']) {
$name = "<hr><p>Från: " . $_SESSION['förnamn'] . ' ' . $_SESSION['efternamn'] ."</p>";
$msg = "<p>" . $_POST['message'] . "</p>";
$msg = cleanData($msg);
file_put_contents("../../msg.dat", $name . $msg, FILE_APPEND);
}
?>

View File

@ -0,0 +1,36 @@
<?php
class user {
private $förnamn;
private $efternamn;
private $användarnamn;
private $lösenord;
public function __construct($förnamn, $efternamn, $användarnamn, $lösenord) {
$this->förnamn = $förnamn;
$this->efternamn = $efternamn;
$this->användarnamn = $användarnamn;
$this->lösenord = $lösenord;
}
public function getFörnamn() {
return $this->förnamn;
}
public function getEfternamn() {
return $this->efternamn;
}
public function getAnvändarnamn() {
return $this->användarnamn;
}
public function getLösenord() {
return $this->lösenord;
}
public function setLösenord($lösenord) {
$this->lösenord = $lösenord;
}
}
?>

View File

@ -0,0 +1,83 @@
<?php
include('dataBas/user.php');
include('dataBas/addUser.php');
include('dataBas/cleanData.php');
session_start();
$_SESSION['CSRFToken'] = bin2hex(random_bytes(32));
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Account Management for the rich</title>
</head>
<body>
<h1>Account Management for the rich</h1>
<form method="post">
<fieldset>
<legend>Sign up</legend>
<input type="hidden" name="form_id" value="sign_up">
<label>Skriv förnamn</label>
<input type="text" name="förnamn">
<label>Skriv efternamn</label>
<input type="text" name="efternamn">
<label>Skriv användarnamn</label>
<input type="text" name="användarnamn">
<label>Skriv lösenord</label>
<input type="password" name="lösenord">
<input type="submit" value="Sign Up">
</fieldset>
</form>
<form method="post">
<fieldset>
<legend>Sign in</legend>
<input type="hidden" name="form_id" value="sign_in">
<label>Skriv användarnamn</label>
<input type="text" name="användarnamn">
<label>Skriv lösenord</label>
<input type="password" name="lösenord">
<input type="submit" value="Sign in">
</fieldset>
</form>
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if ($_POST['form_id'] === 'sign_up') {
$förnamn = filter_input(INPUT_POST, 'förnamn',FILTER_SANITIZE_FULL_SPECIAL_CHARS);
$användarnamn = filter_input(INPUT_POST, 'användarnamn',FILTER_SANITIZE_FULL_SPECIAL_CHARS);
$lösenord = password_hash($_POST['lösenord'], PASSWORD_DEFAULT);
$efternamn = filter_input(INPUT_POST,'efternamn',FILTER_SANITIZE_FULL_SPECIAL_CHARS);
$newUser = new user($förnamn, $efternamn, $användarnamn, $lösenord);
addUser($newUser, $file);
}
if ($_POST['form_id'] === 'sign_in') {
$lösenord = $_POST['lösenord'];
$användarnamn = filter_input(INPUT_POST, 'användarnamn',FILTER_SANITIZE_FULL_SPECIAL_CHARS);
foreach (readUserData($file) as $user) {
if (password_verify($lösenord, $user->getLösenord()) && $användarnamn == $user->getAnvändarnamn()) {
session_regenerate_id(true);
$_SESSION['inloggad'] = true; // Användaren har anget rätt uppgifter.
$_SESSION['förnamn'] = $user->getFörnamn();
$_SESSION['efternamn'] = $user->getEfternamn();
break;
}
}
// Om lyckad inloggning gå till index.php. Annars gå vidare och visa formuläret.
if (isset($_SESSION['inloggad'])) {
include("dataBas/besökRäknare.php");
header("Location: index.php");
}
}
}
include("../footer.html");
?>
</body>
</html>

View File

@ -0,0 +1,8 @@
<aside>
<h1>Namn</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nulla tristique elementum nisl, et vehicula neque laoreet ut.
Praesent sed ultrices purus.
</p>
</aside>

View File

@ -0,0 +1,4 @@
<footer>
<span id="footerLeft">© Sidlayoutarna</span>
<span id="footerRight"><a href="mailto:xxx@doman">xxx@doman</a></span>
</footer>

View File

@ -0,0 +1,3 @@
<header>
<h1>Webbserverprogrammering 1 med Bygren</h1>
</header>

View File

@ -0,0 +1,18 @@
<nav>
<h1>Innehåll</h1>
<ul>
<li><a href="index.php">Hem</a></li>
<li><a href="index.php?page=blogg">Blogg</a></li>
<li><a href="index.php?page=bilder">Bilder</a></li>
<li><a href="index.php?page=kontakt">Kontakt</a></li>
<li><a href="index.php?page=klotter">Klotter</a></li>
<?php
if(!(isset($_SESSION['inloggad']))) {
echo '<li><a href="inLoggning.php">Logga in</a></li>';
}
else {
echo '<li><a href="loggOut.php">Logga ut</a></li>';
}
?>
</ul>
</nav>

View File

@ -0,0 +1,59 @@
<?php
session_start();
?>
<!doctype html>
<html lang="sv">
<head>
<meta charset="utf-8">
<title>Länka in sidor med PHP</title>
<link href="css/styleSheet.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="wrapper">
<?php
include("inc/header.php");
?>
<section id="leftColumn">
<?php
include("inc/meny.php");
include("inc/aside.php");
?>
</section>
<!-- End leftColumn -->
<?php
$page = "start";
if (isset($_GET['page']))
$page = $_GET['page'];
switch ($page) {
case 'blogg':
include('pages/blogg.php');
break;
case 'bilder':
include('pages/bilder.php');
break;
case 'kontakt':
include('pages/kontakt.php');
break;
case 'klotter':
include('pages/klotter.php');
break;
default:
include('pages/start.php');
}
include("inc/footer.php");
if (file_exists("../../hit.dat")) {
$hit = file_get_contents("../../hit.dat");
}
echo "Antal användare: " . $hit;
?>
</div>
<!-- End wrapper -->
</body>
</html>

View File

@ -0,0 +1,8 @@
<?php
session_start();
$_SESSION = array(); // Tömmer sessionsarrayen
session_regenerate_id(true);
header("Location: index.php");
?>

View File

@ -0,0 +1,7 @@
<?php
if (!(isset($_SESSION['inloggad']))) {
echo 'Du är inte inloggad';
} else {
echo '<p>Bild 1</p> <p>Bild 2</p>';
}
?>

View File

@ -0,0 +1,19 @@
<?php
if (!(isset($_SESSION['inloggad']))) {
echo 'Du är inte inloggad';
} else {
echo '<main role="main">
<section>
<hgroup>
<h1>Min blogg Nu</h1>
<h2>I dag gör vi mallar</h2>
</hgroup>
<p>Lorem ipsum id duo autem qualisque, cu laoreet eleifend cum. Eu sea
vidit altera civibus, harum deserunt argumentum ne vim. Eu paulo
corpora appareat pro, brute everti iuvaret ne vis. Diam incorrupte
voluptatibus cu vel, nam congue soluta praesent at.
</p>
</section>
</main>';
}
?>

View File

@ -0,0 +1,17 @@
<?php
if (!(isset($_SESSION['inloggad']))) {
echo 'Du är inte inloggad';
} else {
$Token = $_SESSION['CSRFToken'];
echo "<h1>Klotterplanket</h1>
<form method='post'>
<label>Meddelande</label><br>
<textarea name='message' cols='45' rows='5'></textarea><br />
<input type='hidden' name='CSRFToken' value='$Token'>
<input type='submit' value='Skicka'>
</form>";
include('dataBas/saveMSG.php');
if (file_exists("../../msg.dat")) {
echo file_get_contents("../../msg.dat");
}
}

View File

@ -0,0 +1,9 @@
<?php
if (!(isset($_SESSION['inloggad']))) {
echo 'Du är inte inloggad';
} else {
echo '<p>TelefonNummber: 112</p>
<p>Get help today call your mother</p>
';
}
?>

View File

@ -0,0 +1,7 @@
<?php
if ((isset($_SESSION['inloggad']))) {
echo 'Du är inloggad<br> Välkommen ' . $_SESSION['förnamn'] . ' ' . $_SESSION['efternamn'];
} else {
echo 'Du är inte inloggad';
}
?>

View File

@ -1,3 +1,4 @@
<footer>
<a href="../index.php">Tillbaka</a>
</footer>
</footer>

View File

@ -9,5 +9,6 @@
<a href="Moment-0/index.php">Moment-0</a>
<a href="Moment-1/index.php">Moment-1</a>
<a href="Moment-2/index.php">Moment-2</a>
<a href="Moment-3&4/index.php">Moment-3</a>
</body>
</html>

0
www/userM2.dat Normal file
View File

0
www/userM3.dat Normal file
View File