Volledige versie bekijken : Move_uploaded_file werkt niet



Visaversa
23 May 2014, 16:37
Onderstaand script kan een foto uploaden + beschrijving naar de database sturen. Ook zit er een kleine validatie op het upload formulier, maar hetgeen dat niet lukt is om de geüploade afbeeldingen naar mijn image/ en image/tn/ mappen 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

<?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, $target); echo "Stored in: " . "images/" . $_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
$final_width_of_image = 100;
$path_to_image_directory = 'images/';$path_to_thumbs_directory = 'images/tn/';

?>

----functions.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 ($filename){
require "config.php";
}

?>