Autor | Zpráva | ||
---|---|---|---|
Johny21 Profil |
#1 · Zasláno: 23. 1. 2021, 22:59:14
Ahoj,
dělám administraci pro web a zprovozňuji nahrávání obrázků do galerie. Nastavil jsem si přejmenování souboru a všechny srandy okolo, ale když přes input nahraji obrázek, tak se mi udělá vše (vytvoří název v DB apod.), ale ve složce s nahranými fotkami se neobjeví. Nenahraje se do složky na FTP. Můžete mi prosím někdo poradit, co dělám v kódu za chybu? Děkuji <?php require("../config.php"); if (isset($_FILES) && !empty($_FILES)) { $file = $_FILES['filename']; $name = $file['name']; $file1 = $file['tmp_name']; $max_resolution = 1000; $errorMSG = ""; $sourceProperties1 = getimagesize($file1); $fileNewName1 = md5(date("Y-m-d H:i:s")); $folderPath1 = $_SERVER['DOCUMENT_ROOT']."../img/uploads/"; $ext1 = strtolower(pathinfo($_FILES['filename']['name'], PATHINFO_EXTENSION)); $imageType1 = $sourceProperties1[2]; $exif = exif_read_data($file1); $kategorie = $_POST["category"]; if($ext1!="jpg" && $ext1!="jpeg" && $ext1!= "png") { die(); } if($_FILES['filename']['size'] > 25000000) { $errorMSG .= "<li><b>[Photo 1]</b> File is too big. Maximum size is <b>10 MB</b></li>"; } $stamp = imagecreatefrompng('stamp.png'); $marge_right = 25; $marge_bottom = 25; $sx = imagesx($stamp); $sy = imagesy($stamp); // THUMBNAIL 1 switch ($imageType1) { case IMAGETYPE_JPEG: $imageResourceId1 = imagecreatefromjpeg($file1); if($sourceProperties1[0] > $sourceProperties1[1]) { $newwidth = 400; $newheight = $sourceProperties1[1]*(400/$sourceProperties1[0]); } if($sourceProperties1[0] < $sourceProperties1[1]) { $newwidth = $sourceProperties1[0]*(400/$sourceProperties1[1]); $newheight = 400; } if($sourceProperties1[0] == $sourceProperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetLayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetLayer1, 255, 255, 255); imagefill($targetLayer1, 0, 0, $color); imagecopyresampled($targetLayer1,$imageResourceId1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceProperties1[0], $sourceProperties1[1]); if (!empty($exif['Orientation'])) { switch ($exif['Orientation']) { case 3: $targetLayer1 = imagerotate($targetLayer1, 180, 0); break; case 6: $targetLayer1 = imagerotate($targetLayer1, -90, 0); break; case 8: $targetLayer1 = imagerotate($targetLayer1, 90, 0); break; } } imagejpeg($targetLayer1, $folderPath1. $fileNewName1 . "_thumb." . $ext1); break; case IMAGETYPE_PNG: $imageResourceId1 = imagecreatefromjpeg($file1); if($sourceProperties1[0] > $sourceProperties1[1]) { $newwidth = 400; $newheight = $sourceProperties1[1]*(400/$sourceProperties1[0]); } if($sourceProperties1[0] < $sourceProperties1[1]) { $newwidth = $sourceProperties1[0]*(400/$sourceProperties1[1]); $newheight = 400; } if($sourceProperties1[0] == $sourceProperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetLayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetLayer1, 255, 255, 255); imagefill($targetLayer1, 0, 0, $color); imagecopyresampled($targetLayer1,$imageResourceId1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceProperties1[0], $sourceProperties1[1]); if (!empty($exif['Orientation'])) { switch ($exif['Orientation']) { case 3: $targetLayer1 = imagerotate($targetLayer1, 180, 0); break; case 6: $targetLayer1 = imagerotate($targetLayer1, -90, 0); break; case 8: $targetLayer1 = imagerotate($targetLayer1, 90, 0); break; } } imagepng($targetLayer1, $folderPath1. $fileNewName1 . "_thumb." . $ext1); break; } move_uploaded_file($file1, $folderPath1. $fileNewName1. ".". $ext1); $img1name = $folderPath1.$fileNewName1.".".$ext1; // FULL PHOTO 1 switch ($imageType1) { case IMAGETYPE_JPEG: $img1 = imagecreatefromjpeg($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['Orientation'])) { switch ($exif['Orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagejpeg($new_image,$img1name,100); imagedestroy($new_image);break; case IMAGETYPE_PNG: $img1 = imagecreatefrompng($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['Orientation'])) { switch ($exif['Orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagepng($new_image,$img1name,100); imagedestroy($new_image);break; } if(empty($errorMSG)){ $filename = $fileNewName1.".".$ext1; $poradi_q = $mysqli->prepare("SELECT poradi FROM galerie WHERE kategorie = ? ORDER BY poradi DESC LIMIT 1"); $poradi_q->bind_param("i",$kategorie); $poradi_q->execute(); $poradi_q->bind_result($poradi); $poradi_q->fetch(); $poradi_q->close(); $poradi = $poradi+1; $foto_q = $mysqli->prepare("INSERT INTO galerie (foto,poradi,kategorie) VALUES (?,?,?)"); $foto_q->bind_param("sii",$filename,$poradi,$kategorie); $foto_q->execute(); $foto_q->close(); $foto_id_q = $mysqli->prepare("SELECT id FROM galerie WHERE foto = ? LIMIT 1"); $foto_id_q->bind_param("s",$filename); $foto_id_q->execute(); $foto_id_q->bind_result($foto_id); $foto_id_q->fetch(); $foto_id_q->close(); $successmsg = "<i class='fas fa-check'></i> Fotografie byla úspěšně nahrána."; echo json_encode(['code'=>200, 'successmsg'=>$successmsg, 'imgurl'=>$filename, 'imgid'=>$foto_id, 'imgcat'=>$kategorie]); exit; } } echo json_encode(['code'=>404, 'msg'=>$errorMSG]); ?> <?php require("../config.php"); if (isset($_files) && !empty($_files)) { $file = $_files['filename']; $name = $file['name']; $file1 = $file['tmp_name']; $max_resolution = 1000; $errormsg = ""; $sourceproperties1 = getimagesize($file1); $filenewname1 = md5(date("y-m-d h:i:s")); $folderpath1 = $_server['document_root']."../img/uploads/"; $ext1 = strtolower(pathinfo($_files['filename']['name'], pathinfo_extension)); $imagetype1 = $sourceproperties1[2]; $exif = exif_read_data($file1); $kategorie = $_post["category"]; if($ext1!="jpg" && $ext1!="jpeg" && $ext1!= "png") { die(); } if($_files['filename']['size'] > 25000000) { $errormsg .= "<li><b>[photo 1]</b> file is too big. maximum size is <b>10 mb</b></li>"; } $stamp = imagecreatefrompng('stamp.png'); $marge_right = 25; $marge_bottom = 25; $sx = imagesx($stamp); $sy = imagesy($stamp); // thumbnail 1 switch ($imagetype1) { case imagetype_jpeg: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagejpeg($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; case imagetype_png: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagepng($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; } move_uploaded_file($file1, $folderpath1. $filenewname1. ".". $ext1); $img1name = $folderpath1.$filenewname1.".".$ext1; // full photo 1 switch ($imagetype1) { case imagetype_jpeg: $img1 = imagecreatefromjpeg($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagejpeg($new_image,$img1name,100); imagedestroy($new_image);break; case imagetype_png: $img1 = imagecreatefrompng($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagepng($new_image,$img1name,100); imagedestroy($new_image);break; } if(empty($errormsg)){ $filename = $filenewname1.".".$ext1; $poradi_q = $mysqli->prepare("select poradi from galerie where kategorie = ? order by poradi desc limit 1"); $poradi_q->bind_param("i",$kategorie); $poradi_q->execute(); $poradi_q->bind_result($poradi); $poradi_q->fetch(); $poradi_q->close(); $poradi = $poradi+1; $foto_q = $mysqli->prepare("insert into galerie (foto,poradi,kategorie) values (?,?,?)"); $foto_q->bind_param("sii",$filename,$poradi,$kategorie); $foto_q->execute(); $foto_q->close(); $foto_id_q = $mysqli->prepare("select id from galerie where foto = ? limit 1"); $foto_id_q->bind_param("s",$filename); $foto_id_q->execute(); $foto_id_q->bind_result($foto_id); $foto_id_q->fetch(); $foto_id_q->close(); $successmsg = "<i class='fas fa-check'></i> fotografie byla úspěšně nahrána."; echo json_encode(['code'=>200, 'successmsg'=>$successmsg, 'imgurl'=>$filename, 'imgid'=>$foto_id, 'imgcat'=>$kategorie]); exit; } } echo json_encode(['code'=>404, 'msg'=>$errormsg]); ?> <?php require("../config.php"); if (isset($_files) && !empty($_files)) { $file = $_files['filename']; $name = $file['name']; $file1 = $file['tmp_name']; $max_resolution = 1000; $errormsg = ""; $sourceproperties1 = getimagesize($file1); $filenewname1 = md5(date("y-m-d h:i:s")); $folderpath1 = $_server['document_root']."../img/uploads/"; $ext1 = strtolower(pathinfo($_files['filename']['name'], pathinfo_extension)); $imagetype1 = $sourceproperties1[2]; $exif = exif_read_data($file1); $kategorie = $_post["category"]; if($ext1!="jpg" && $ext1!="jpeg" && $ext1!= "png") { die(); } if($_files['filename']['size'] > 25000000) { $errormsg .= "<li><b>[photo 1]</b> file is too big. maximum size is <b>10 mb</b></li>"; } $stamp = imagecreatefrompng('stamp.png'); $marge_right = 25; $marge_bottom = 25; $sx = imagesx($stamp); $sy = imagesy($stamp); // thumbnail 1 switch ($imagetype1) { case imagetype_jpeg: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagejpeg($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; case imagetype_png: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagepng($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; } move_uploaded_file($file1, $folderpath1. $filenewname1. ".". $ext1); $img1name = $folderpath1.$filenewname1.".".$ext1; // full photo 1 switch ($imagetype1) { case imagetype_jpeg: $img1 = imagecreatefromjpeg($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagejpeg($new_image,$img1name,100); imagedestroy($new_image);break; case imagetype_png: $img1 = imagecreatefrompng($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagepng($new_image,$img1name,100); imagedestroy($new_image);break; } if(empty($errormsg)){ $filename = $filenewname1.".".$ext1; $poradi_q = $mysqli->prepare("select poradi from galerie where kategorie = ? order by poradi desc limit 1"); $poradi_q->bind_param("i",$kategorie); $poradi_q->execute(); $poradi_q->bind_result($poradi); $poradi_q->fetch(); $poradi_q->close(); $poradi = $poradi+1; $foto_q = $mysqli->prepare("insert into galerie (foto,poradi,kategorie) values (?,?,?)"); $foto_q->bind_param("sii",$filename,$poradi,$kategorie); $foto_q->execute(); $foto_q->close(); $foto_id_q = $mysqli->prepare("select id from galerie where foto = ? limit 1"); $foto_id_q->bind_param("s",$filename); $foto_id_q->execute(); $foto_id_q->bind_result($foto_id); $foto_id_q->fetch(); $foto_id_q->close(); $successmsg = "<i class='fas fa-check'></i> fotografie byla úspěšně nahrána."; echo json_encode(['code'=>200, 'successmsg'=>$successmsg, 'imgurl'=>$filename, 'imgid'=>$foto_id, 'imgcat'=>$kategorie]); exit; } } echo json_encode(['code'=>404, 'msg'=>$errormsg]); ?> dělám administraci pro web a zprovozňuji nahrávání obrázků do galerie. nastavil jsem si přejmenování souboru a všechny srandy okolo, ale když přes input nahraji obrázek, tak se mi udělá vše (vytvoří název v db apod.), ale ve složce s nahranými fotkami se neobjeví. nenahraje se do složky na ftp. můžete mi prosím někdo poradit, co dělám v kódu za chybu? děkuji <?php require("../config.php"); if (isset($_files) && !empty($_files)) { $file = $_files['filename']; $name = $file['name']; $file1 = $file['tmp_name']; $max_resolution = 1000; $errormsg = ""; $sourceproperties1 = getimagesize($file1); $filenewname1 = md5(date("y-m-d h:i:s")); $folderpath1 = $_server['document_root']."../img/uploads/"; $ext1 = strtolower(pathinfo($_files['filename']['name'], pathinfo_extension)); $imagetype1 = $sourceproperties1[2]; $exif = exif_read_data($file1); $kategorie = $_post["category"]; if($ext1!="jpg" && $ext1!="jpeg" && $ext1!= "png") { die(); } if($_files['filename']['size'] > 25000000) { $errormsg .= "<li><b>[photo 1]</b> file is too big. maximum size is <b>10 mb</b></li>"; } $stamp = imagecreatefrompng('stamp.png'); $marge_right = 25; $marge_bottom = 25; $sx = imagesx($stamp); $sy = imagesy($stamp); // thumbnail 1 switch ($imagetype1) { case imagetype_jpeg: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagejpeg($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; case imagetype_png: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagepng($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; } move_uploaded_file($file1, $folderpath1. $filenewname1. ".". $ext1); $img1name = $folderpath1.$filenewname1.".".$ext1; // full photo 1 switch ($imagetype1) { case imagetype_jpeg: $img1 = imagecreatefromjpeg($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagejpeg($new_image,$img1name,100); imagedestroy($new_image);break; case imagetype_png: $img1 = imagecreatefrompng($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagepng($new_image,$img1name,100); imagedestroy($new_image);break; } if(empty($errormsg)){ $filename = $filenewname1.".".$ext1; $poradi_q = $mysqli->prepare("select poradi from galerie where kategorie = ? order by poradi desc limit 1"); $poradi_q->bind_param("i",$kategorie); $poradi_q->execute(); $poradi_q->bind_result($poradi); $poradi_q->fetch(); $poradi_q->close(); $poradi = $poradi+1; $foto_q = $mysqli->prepare("insert into galerie (foto,poradi,kategorie) values (?,?,?)"); $foto_q->bind_param("sii",$filename,$poradi,$kategorie); $foto_q->execute(); $foto_q->close(); $foto_id_q = $mysqli->prepare("select id from galerie where foto = ? limit 1"); $foto_id_q->bind_param("s",$filename); $foto_id_q->execute(); $foto_id_q->bind_result($foto_id); $foto_id_q->fetch(); $foto_id_q->close(); $successmsg = "<i class='fas fa-check'></i> fotografie byla úspěšně nahrána."; echo json_encode(['code'=>200, 'successmsg'=>$successmsg, 'imgurl'=>$filename, 'imgid'=>$foto_id, 'imgcat'=>$kategorie]); exit; } } echo json_encode(['code'=>404, 'msg'=>$errormsg]); ?> dělám administraci pro web a zprovozňuji nahrávání obrázků do galerie. nastavil jsem si přejmenování souboru a všechny srandy okolo, ale když přes input nahraji obrázek, tak se mi udělá vše (vytvoří název v db apod.), ale ve složce s nahranými fotkami se neobjeví. nenahraje se do složky na ftp. můžete mi prosím někdo poradit, co dělám v kódu za chybu? děkuji <?php require("../config.php"); if (isset($_files) && !empty($_files)) { $file = $_files['filename']; $name = $file['name']; $file1 = $file['tmp_name']; $max_resolution = 1000; $errormsg = ""; $sourceproperties1 = getimagesize($file1); $filenewname1 = md5(date("y-m-d h:i:s")); $folderpath1 = $_server['document_root']."../img/uploads/"; $ext1 = strtolower(pathinfo($_files['filename']['name'], pathinfo_extension)); $imagetype1 = $sourceproperties1[2]; $exif = exif_read_data($file1); $kategorie = $_post["category"]; if($ext1!="jpg" && $ext1!="jpeg" && $ext1!= "png") { die(); } if($_files['filename']['size'] > 25000000) { $errormsg .= "<li><b>[photo 1]</b> file is too big. maximum size is <b>10 mb</b></li>"; } $stamp = imagecreatefrompng('stamp.png'); $marge_right = 25; $marge_bottom = 25; $sx = imagesx($stamp); $sy = imagesy($stamp); // thumbnail 1 switch ($imagetype1) { case imagetype_jpeg: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagejpeg($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; case imagetype_png: $imageresourceid1 = imagecreatefromjpeg($file1); if($sourceproperties1[0] > $sourceproperties1[1]) { $newwidth = 400; $newheight = $sourceproperties1[1]*(400/$sourceproperties1[0]); } if($sourceproperties1[0] < $sourceproperties1[1]) { $newwidth = $sourceproperties1[0]*(400/$sourceproperties1[1]); $newheight = 400; } if($sourceproperties1[0] == $sourceproperties1[1]) { $newwidth=400; $newheight=400; } $center_x = 200 - $newwidth / 2; $center_y = 200 - $newheight / 2; $targetlayer1=imagecreatetruecolor(400,400); $color = imagecolorallocate($targetlayer1, 255, 255, 255); imagefill($targetlayer1, 0, 0, $color); imagecopyresampled($targetlayer1,$imageresourceid1,$center_x,$center_y,0,0,$newwidth,$newheight, $sourceproperties1[0], $sourceproperties1[1]); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $targetlayer1 = imagerotate($targetlayer1, 180, 0); break; case 6: $targetlayer1 = imagerotate($targetlayer1, -90, 0); break; case 8: $targetlayer1 = imagerotate($targetlayer1, 90, 0); break; } } imagepng($targetlayer1, $folderpath1. $filenewname1 . "_thumb." . $ext1); break; } move_uploaded_file($file1, $folderpath1. $filenewname1. ".". $ext1); $img1name = $folderpath1.$filenewname1.".".$ext1; // full photo 1 switch ($imagetype1) { case imagetype_jpeg: $img1 = imagecreatefromjpeg($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagejpeg($new_image,$img1name,100); imagedestroy($new_image);break; case imagetype_png: $img1 = imagecreatefrompng($img1name); $original_width = imagesx($img1); $original_height = imagesy($img1); $ratio = $max_resolution / $original_width; $new_width = $max_resolution; $new_height = $original_height * $ratio; if($new_height > $max_resolution) { $ratio = $max_resolution / $original_height; $new_height = $max_resolution; $new_width = $original_width * $ratio; } $new_image = imagecreatetruecolor($new_width,$new_height); imagecopyresampled($new_image,$img1,0,0,0,0,$new_width,$new_height,$original_width,$original_height); if (!empty($exif['orientation'])) { switch ($exif['orientation']) { case 3: $new_image = imagerotate($new_image, 180, 0); break; case 6: $new_image = imagerotate($new_image, -90, 0); break; case 8: $new_image = imagerotate($new_image, 90, 0); break; } } imagecopy($new_image, $stamp, imagesx($new_image) - $sx - $marge_right, imagesy($new_image) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp)); imagepng($new_image,$img1name,100); imagedestroy($new_image);break; } if(empty($errormsg)){ $filename = $filenewname1.".".$ext1; $poradi_q = $mysqli->prepare("select poradi from galerie where kategorie = ? order by poradi desc limit 1"); $poradi_q->bind_param("i",$kategorie); $poradi_q->execute(); $poradi_q->bind_result($poradi); $poradi_q->fetch(); $poradi_q->close(); $poradi = $poradi+1; $foto_q = $mysqli->prepare("insert into galerie (foto,poradi,kategorie) values (?,?,?)"); $foto_q->bind_param("sii",$filename,$poradi,$kategorie); $foto_q->execute(); $foto_q->close(); $foto_id_q = $mysqli->prepare("select id from galerie where foto = ? limit 1"); $foto_id_q->bind_param("s",$filename); $foto_id_q->execute(); $foto_id_q->bind_result($foto_id); $foto_id_q->fetch(); $foto_id_q->close(); $successmsg = "<i class='fas fa-check'></i> fotografie byla úspěšně nahrána."; echo json_encode(['code'=>200, 'successmsg'=>$successmsg, 'imgurl'=>$filename, 'imgid'=>$foto_id, 'imgcat'=>$kategorie]); exit; } } echo json_encode(['code'=>404, 'msg'=>$errormsg]); ?> |
||
NoxOne Profil |
#2 · Zasláno: 24. 1. 2021, 12:45:06
No to je hrozná slátanina. Nejprve si uřízni vše co pracuje s obrázkem a databází. Prostě si nech jenom nahrát obrázek do správného adresáře. Když tam nebude tak zjisti kam se uložil a nebo jakou chybu ti hlásí server.
|
||
Časová prodleva: 3 roky
|
0