Blob: write.php

Blob id: d04a628b78c94c5728bb16031971d8b6cf7b6b2d

Size: 2.3 KB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php
include "connect.php";
include "logged_in.php";

if ($logged_in) {
	// Hanki kategoriat
	$sql = "SELECT * FROM kategoriat";
	$result = $conn->query($sql); // Aja komento
	// Jos tuloksia
	$kategoriat = [];
	if ($result->num_rows>0){
		while($row = $result->fetch_assoc()){
			$kategoriat[] = $row;
		}
	}
	// Upload
	if ($_SERVER['REQUEST_METHOD'] == 'POST') {
		$user_id = $_SESSION["id"];
		$otsikko = $_POST["title"];
		$teksti = $_POST["text"];
		$kat = $_POST["cat"];
		// Random nimi tiedostolle jotta ei tule kollisioita
		$permittedchars = 'abcdefghijklmnopqrstuvwxyz1234567890';
		$random = substr(str_shuffle($permittedchars), 0, 10);
		// Ota tärkeät tiedot tiedostosta
		$filename = $_FILES['file']["name"];
		$tmp = $_FILES['file']["tmp_name"];
		$size = $_FILES['file']["size"];
		$error = $_FILES['file']["error"];
		$filetype = $_FILES['file']["type"];
		// Tarskista tyyppi
		$allowed = array('jpg', 'png', 'tiff', 'jpeg', 'webp');
		$ext = end(explode("/", $filetype));
		if (in_array($ext, $allowed) and $error === 0 and $size < 5000000000) {
			echo "Tiedosto meni läpi...";
			$filenameNew = $random . "." . $ext;
			$upload = "./images/" . $filenameNew;
			move_uploaded_file($tmp, $upload);
			echo "Success!";
			$sql = "INSERT INTO `uutiset` (`id`, `otsikko`, `teksti`, `kuva`, `kategoria_id`, `toimittaja_id`) VALUES (NULL, '$otsikko', '$teksti', '$filenameNew', '$kat', '$user_id'); ";
			$result = $conn->query($sql); // Aja komento
			// Redirect
			header("Location: .#$otsikko");
			die();
		}
	}
}
else {
	// Redirect
	header("Location: .");
	die();
}
?>
<form action="" method="POST" enctype="multipart/form-data">
	<label for="title">Otsikko</label> <br>
	<input type="text" id="title" name="title">
	<br>
	<label for="text">Teksti</label> <br>
	<textarea id="text" name="text" rows="5" cols="60"></textarea>
	<br>
	<label for="file">Kuva</label> <br>
	<input type="file" id="file" name="file">
	<br>
	<label for="cat">Kategoria</label> <br>
	<select id="cat" name="cat">
		<?php foreach ($kategoriat as $kategoria): ?>
			<option value="<?php echo $kategoria["id"] ?>"><?php echo $kategoria["nimi"] ?></option>
		<?php endforeach; ?>
	</select>
	<br>
	<span>Käyttäjä: <?php echo $_SESSION["name"] ?></span>
	<br>
	<button type="submit">Lähetä</button>
</form>