Visaversa
Legacy Member
Onderstaand script kan een foto uploaden + beschrijving naar de database sturen, deze komen er mooi in. Ook zit er een klein deel validatie op het upload formulier, maar hetgeen dat niet lukt is om de geüploade afbeeldingen naar mijn image/ en image/tn/ (thumbnails) te schrijven.
Heeft iemand een idee wat ik fout doe? Zo ziet alvast de structuur eruit:
images/
-tn/
css/
js/
index.php
config.php
functions.php
database.php
---- index.php
----config.php
----functions.php
Heeft iemand een idee wat ik fout doe? Zo ziet alvast de structuur eruit:
images/
-tn/
css/
js/
index.php
config.php
functions.php
database.php
---- index.php
PHP:
<?php
require "config.php";
require "functions.php";
require "database.php";
if(isset($_FILES['fupload'])){
$filename = $_FILES['fupload']['name'];
$source = $_FILES['fupload']['tmp_name'];
$target = $path_to_image_directory . $filename;
$description = addslashes($_POST['description']);
$src = $path_to_image_directory . $filename;
$tn_src = $path_to_thumbs_directory . $filename;
if (strlen($_POST['description'])<4)
$error['description'] = '<p class="alert">Please enter a description for your photo</p>';
if($filename == '' || !preg_match('/[.](jpg)|(gif)|(png)|(jpeg)$/', $filename))
$error['no_file'] = '<p class="alert">Please select an image, dummy! </p>';
if (!isset($error)){
move_uploaded_file($source, 'images/' . $filename);
echo "Stored in: " . "https://www.beyondgaming.be/forums" . $_FILES["fupload"]["name"];
$q = "INSERT into photo(description, src, tn_src)VALUES('$description', '$src','$tn_src')";
$result = $mysqli->query($q) or die (mysqli_error($myqli));
if ($result) {
echo "Succes! Your file has been uploaded";
}
createThumbnail($filename);
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Upload</title>
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<h1>My photos</h1>
<ul><?php getPhotos(); ?></ul>
<h2>Upload a photo</h2>
<form enctype="multipart/form-data" action="index.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input type="file" name="fupload" /><br/>
<textarea name="description" id="description" cols="50" rows="6"></textarea><br/>
<input type="submit" value="Upload photo" name="submit" />
</form>
<?php
if (isset($error["description"])) {
echo $error["description"];
}
if (isset($error["no_file"])) {
echo $error["no_file"];
}
?>
</body>
</html>
----config.php
PHP:
<?php
$final_width_of_image = 200;
$path_to_image_directory = 'images/';
$path_to_thumbs_directory = 'images/tn/';
?>
----functions.php
PHP:
<?php
function getPhotos(){
require 'database.php';
$q = "SELECT id, tn_src FROM photo ORDER BY id desc";
$result = $mysqli->query($q) or die ($mysqli_error($mysqli));
if ($result){
while ($row = $result->fetch_object()) {
$id = $row->id;
$tn_src = $row->tn_src;
print '<li>
<a href="review_image.php?id=' . $id . '" >
<img src="' . $tn_src . '" alt="images" id="' . $id . '" />
</a>
</li>';
print "\n";
}
}
}
function createThumbnail (){
require "config.php";
}
?>