Tags:
php
Hej, jeg har et problem med at få lavet en resized version af et billede som jeg har fået oploaded via en form. Billedet bliver uploaded til en mappe på serveren og navnet bliver skrevet ind i en MySQL database med dato og tid foran for at gøre billedet unikt, så det ikke kan overskrives.
Jeg har denne kode i en fil som hedder billede.php:
<?php
// The file
$filename = "uploads/".$_GET['id'].".jpg";
// Set a maximum height and width
$width = 130;
$height = 190;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if ($width && ($width_orig < $height_orig)) {
$width = ($height / $height_orig) * $width_orig;
} else {
$height = ($width / $width_orig) * $height_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// Output
imagejpeg($image_p, null, 100);
?>
Så har jeg denne kode som er det, der vises, efter man har uploaded et billede for, at man kan se billedet:
<?
include "../../connect.php";
$query = mysql_query("SELECT * FROM army WHERE dato = '$dato'");
while ($row = mysql_fetch_array($query)) {
$unit_navnadd = $row["unit_navn"];
$unit_textadd = $row["unit_text"];
$unit_positivadd = $row["unit_positiv"];
$unit_negativadd = $row["unit_negativ"];
echo " <tr align='left' valign='middle'>\\n";
echo " <td colspan='2'><span class='style1'>$unit_navnadd</span></td>\\n";
echo " </tr>\\n";
echo " <tr>\\n";
echo " <td width='110' rowspan='3' align='left' valign='top'><a href='billede.php?id=filename' target='_blank'><img src='billede.php?id=filename'></a></td>\\n";
echo " <td width='301'><span class='style2'>$unit_textadd</span></td>\\n";
echo " </tr>\\n";
echo " <tr>\\n";
echo " <td><span class='style2'>$unit_positivadd</span></td>\\n";
echo " </tr>\\n";
echo " <tr>\\n";
echo " <td><span class='style2'>$unit_negativadd</span></td>\\n";
echo " </tr>\\n";
echo " <tr>\\n";
echo " <td colspan='2' align='left' valign='top'><span class='style3'>Tryk på billedet for at se det i stort </span></td>\\n";
echo " </tr>\\n";
}
?>
Er det udskrivningen af billedet som er forkert? Det som sker ved uploading af et billede er, at der bliver lavet en kopi af billedet, som så bliver udskrevet på siden, man skal så kunne trykke på det lille billede og et nyt vindue, som skal komme frem, hvor man kan se det store billede som er det originale, som man har uploaded.
Jeg skal vel også have navnet på det billede, som er blevet resized ind i databasen for at jeg kan få det skrevet ud?
Håber der er nogen der kan hjælpe mig.