Mysqli og upload af billede til mappe og database
HejJeg har lige lidt problemer med at få min henvisning fra mine billeder til at få lagt fil navnet ind på min database.
Kan godt lave den ren men uden $_FILES der går den gal.
min kode er:
<form action="" method="POST" enctype="multipart/form-data" name="upload" id="upload">
Fil, der skal overføres:
<label>
<input name="filnavn" type="file" class="textfield" id="filnavn" size="60" />
</label>
<input name="dato" type="text" class="textfield" id="dato" value="<?php echo date("Y-m-d");?>" readonly />
<label for="tid"></label>
<input name="tid" type="text" class="textfield" id="tid" value="<?php echo date("H:i:s");?>" readonly />
<br />
<br />
<label>
<input name="filnavn" type="submit" class="textfield" id="filnavn" value="Overfør" />
<br />
<br />
</label>
<?php
/* Opret vare */
if ($stmt = $con->prepare('INSERT INTO `tbl_billedemenu` (`id`, `billedenavn`, `dato`, `tid`) VALUES (?, ?, ?, ?)')) {
/* Bind parametre */
$stmt->bind_param('isss', $id, $billedenavn, $dato, $tid);
/* Sæt værdier på parametrene */
$billedenavn = $_FILES['filnavn']['name'];
$dato = $_POST['dato'];
$tid = $_POST['tid'];
/* Eksekver forespørgslen */
$stmt->execute();
/* Luk statement */
$stmt->close();
} else {
/* Der er opstået en fejl */
echo 'Der opstod en fejl i erklæringen: ' . $con->error;
}
$tempfile = $_FILES['filnavn']['tmp_name'];
$destination = "../uploads/{$_FILES['filnavn']['name']}";
copy($tempfile, $destination);
if (isset($_FILES['filnavn'])) {
print "Fil, der er blevet overført: {$_FILES['filnavn']['name']}<p>\n";
}
if($_POST) {
if($_FILES['filnavn']['name'] == ""){
$results = "Feltet kan ikke være tomt.
Tryk på 'Browse' knappen,
Find billedet og tryk på 'Upload billede' knappen.";
}
else {
$size=filesize($_FILES['filnavn']['tmp_name']);
$filename = stripslashes($_FILES['filnavn']['name']);
$extension = get_image_extension($filename);
if($size > $maximum_size) {
$results = "Filen er for stor!
Prøv igen med et mindre";
}
else
if (($extension != "jpg") &&
($extension != "jpeg") &&
($extension != "png") &&
($extension != "gif")) {
$results = 'Billedet kan kun være i jpg, jpeg, png, eller gif filer.
Prøv igen!';
}
else{
$copy = @copy($_FILES['filnavn']['tmp_name'], $images_location.$filename);
if (!$copy){
$results = "Fejl ved upload af billede! Prøv igen!";
}
else{
create_thumbnail($images_location.$filename,$thumbs_location.$filename, $thumb_width);
$results = "Billedet er blivet uploadet";
}
}
}
}
?>
</form>
PS.
Jeg har fået det til at virke før men der bruge jeg ikke mysqli opsætningen.
Og vil helst kun bruge mysqli fra nu af.
Med venlig hilsen
Morten