Er der nogen som kan gennemskue hvorfor mine thumbs kommer til at hedder det store billedes navn først. Hvis mit store billeder f.eks. hedder billede.jpg kommer min thumb til at hedde billede.jpgthumb_billede.jpg?
$billede = $_FILES['upfile']['name']; $type = strrchr($billede, ".");// For at finde filtypen til tjek af jpeg kontra jpg $billede = strtolower($billede);// ændre alt til små bogstaver $dest = $usermap . $billede;// Stien til det store billede $dest = tjekfilnavn($dest); $thumbnail_dir = $usermap_thumbs . $billede;// Stien til det thumbnail $overskrift = $_POST['kommentar'];
$oprettelsesDato = date('Ymd'); $source = $_FILES['upfile']['tmp_name']; if (is_uploaded_file($source)) { if (tjektype($_FILES['upfile']['type'])) { if (move_uploaded_file($source, $dest)) { list($width, $height) = getimagesize($dest); $new_width = 100; $krympefaktor = $new_width/$width; $new_height = round($height * $krympefaktor); $destinationImage = imagecreatetruecolor($new_width, $new_height); if(tjektype($_FILES['upfile']['type'] == "image/pjpeg")) { $sourceImage = imagecreatefromjpeg($dest); imagecopyresampled($destinationImage, $sourceImage, 0, 0, 0, 0, $new_width, $new_height, imagesx($sourceImage), imagesy($sourceImage)); if ($type == ".jpeg") { imagejpeg($destinationImage, $thumbnail_dir.basename($billede, ".jpeg")."_thumb.jpeg"); } else { imagejpeg($destinationImage, $thumbnail_dir.basename($billede, ".jpg")."_thumb.jpg"); } } else if(tjektype($_FILES['upfile']['type'] == "image/png")) { $sourceImage = imagecreatefrompng($dest); imagecopyresampled($destinationImage, $sourceImage, 0, 0, 0, 0, $new_width, $new_height, imagesx($sourceImage), imagesy($sourceImage)); imagepng($destinationImage, $thumbnail_dir.basename($billede, ".png")."_thumb.png"); } mysql_query("INSERT INTO images (id, user, name, text, date) VALUES ('', '$userid', '$billede', '$overskrift', '$oprettelsesDato')") or die (mysql_error()); mysql_close(); $besked = "Tekst og billede gemt"; } else { $besked = "Der blev ikke gemt noget"; } } else { $besked = "Du prøvede at gemme et billedeformat som ikke er tilladt. Du kan gemme billeder i JPEG og PNG formaterne."; } } else { mysql_query("INSERT INTO RS_Nyhed SET overskrift='$overskrift', sti='images/intetBillede.png', tekst='$tekst', dato='$oprettelsesDato'"); mysql_close(); header("location: adminNyhed.php"); }
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
Så bliver : imagejpeg($destinationImage, $thumbnail_dir.basename($billede, ".jpeg")."_thumb.jpeg"); da til: imagejpeg($destinationImage, /mappe/billede.jpgbillede_thumb.jpeg) ' For du lægger jo $thumbnail_dir + billede + _thumb.jpg, det må give: /mappe/billede.jpgbillede_thumb.jpeg
Hov nu opstod der et andet problem, hvis jeg uploader to filer med samme navn omdøber den godt nok den store fil, men den genererer ingen thumb? Her er funktionen til tjek på navnet:
Det giver samme resultat, uploader man et billede med navnet f.eks. img.jpg virker det helt fint. Uploader man så igen et billede med samme navn kommer det store billede til at hedde img_001.jpg men thumben bliver ikke kopieret..
Hvis man kun må uploade 2 gange, hvordan vil du holde styr på det ?
Hvis man gerne må uploade flere end 2 gange, hvordan undgår du så at overskrive en existerende fil selv med random nummer ? Du bliver squ da nød til at tjekke om filen existere eller ej.
dkfire > Mit "random" nummer, er datoen, og tiden for når man uploader, så medmindre et billede med samme navn, og i samme sekund bliver uploadet, så skulle der ikke være noget problem.
zurekk => Den kopierer slet ikke thumben når jeg laver dine ændringer
dkfire => Hvordan laver jeg tjek på thumben? Troede egentlig at thumben blev genereret ud fra navnet på det store billede som jo i så fald ville være ændret hvis der fandtes et billede med samme navn i forvejen..
$billede = $_FILES['upfile']['name']; $type = strrchr($billede, ".");// For at finde filtypen til tjek af jpeg kontra jpg $billede = strtolower($billede);// ændre alt til små bogstaver $dest = $usermap . $billede;// Stien til det store billede $dest = tjekfilnavn($dest); $thumbnail_dir = $usermap_thumbs . $billede;// Stien til det thumbnail $overskrift = $_POST['kommentar'];
Du havde bare lige glemt nogle "." foran basename.. Nu virker det en smule, bortset fra at et billeder ved navn michael1.jpg, kommer til at hedde 070503120550_michael1.jpg_thumb.jpeg, og så ender det i roden istedet for i mappen thumbnails.
$billede = $_FILES['upfile']['name']; $type = strrchr($billede, ".");// For at finde filtypen til tjek af jpeg kontra jpg $billede = strtolower($billede);// ændre alt til små bogstaver $dest = $usermap . $billede;// Stien til det store billede $dest = tjekfilnavn($dest); $thumbnail_dir = $usermap_thumbs . $billede;// Stien til det thumbnail $overskrift = $_POST['kommentar'];
$billede = $_FILES['upfile']['name']; $type = strrchr($billede, ".");// For at finde filtypen til tjek af jpeg kontra jpg $billede = strtolower($billede);// ændre alt til små bogstaver $dest = $usermap . $billede;// Stien til det store billede $dest = tjekfilnavn($dest); $thumbnail_dir = $usermap_thumbs . $billede;// Stien til det thumbnail $overskrift = $_POST['kommentar'];
$random = date('ymdhms'); $oprettelsesDato = date('Ymd'); $source = $_FILES['upfile']['tmp_name']; if (is_uploaded_file($source)) { $newsource = $random . "_" . $billede; rename($source, $newsource); if (tjektype($_FILES['upfile']['type'])) { if (move_uploaded_file($newsource, $dest)) {
Ved ikke om det er mig du mener, men hvis det er, så, her :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.