Премини към съдържанието

Препоръчан отговор


Здравейте, имам нужда от малко помощ относно система за ъплоудване на снимки, искам да разбера как мога да изведа всички снимки, които ъплоудвам също така как да записва освен смалената снимка така и оригиналната всяка една да си има някво ид за да мога да направя омалената снимка линк към голямата надявам се някой да помогне благодаря предварително. Ето и кода:

 

function.php

<?phpfunction resize($width, $height){		list($w, $h) = getimagesize($_FILES['image']['tmp_name']);		$ratio = max($width/$w, $height/$h);	$h = ceil($height / $ratio);	$x = ($w - $width / $ratio) / 2;	$w = ceil($width / $ratio);		$path = 'uploads/'.$width.'x'.$height.'_'.$_FILES['image']['name'];		$imgString = file_get_contents($_FILES['image']['tmp_name']);		$image = imagecreatefromstring($imgString);	$tmp = imagecreatetruecolor($width, $height);	imagecopyresampled($tmp, $image,  	0, 0,  	$x, 0,  	$width, $height,  	$w, $h);		switch ($_FILES['image']['type']) {		case 'image/jpeg':			imagejpeg($tmp, $path, 100);			break;		case 'image/png':			imagepng($tmp, $path, 0);			break;		case 'image/gif':			imagegif($tmp, $path);			break;		default:			exit;			break;	}	return $path;		imagedestroy($image);	imagedestroy($tmp);}?>

index.php

<?phpinclude( 'function.php');$max_file_size = 1024*3000; // 3000kb$valid_exts = array('jpeg', 'jpg', 'png', 'gif');$sizes = array(130 => 135);if ($_SERVER['REQUEST_METHOD'] == 'POST' AND isset($_FILES['image'])) {	if( $_FILES['image']['size'] < $max_file_size ){				$ext = strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));		if (in_array($ext, $valid_exts)) {			/* resize image */			foreach ($sizes as $w => $h) {				$files[] = resize($w, $h);			}		} else {			$msg = '..';		}	} else{		$msg = '..';	}}?><!doctype html><html><head>	<meta charset="UTF-8" /></head><body>			<?php if(isset($msg)): ?>			<?php echo $msg ?>		<?php endif ?>						<form action="" method="post" enctype="multipart/form-data">			<label>				<span>Choose image</span>				<input type="file" name="image" accept="image/*" />			</label>			<input type="submit" value="Upload" />		</form>				<?php				if(isset($files)){			foreach ($files as $image) {				echo "<a href='#'><img class='img' src='{$image}' /></a>";			}		}		?>

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Този скрипт не струва.

Първо качваш (записваш) оригиналната снимка и след това правиш смалени копия от нея.

Освен това е добре да запишеш в базата данни какво си качил.

За листването на снимките - може да си запишеш пътя до снимките в един масив, който след това да го вкараш в цикъл да ти ги извади на страницата.

Редактирано от gothicrock (преглед на промените)
  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.