Kliknite tukaj, da si ogledate profil, kot ga vidijo drugi
 
Domov > Forum > Računalništvo

Pomoč pri nalaganju več slik

 
 
11.7.2015, 16:17
Lep pozdrav imam problem pri nalaganju več slik mi ne gre samo naloži mi eno sliko če,mi lahko pomagate tukaj je tudi koda.
/*
if(isset($_FILES['image_file']))
{

foreach($_FILES['image_file']['tmp_name']as $key => $tmp_name ); {//file name
$image_name =$key.$_FILES['image_file']['name'][$key];
$image_size = $_FILES['image_file']['size'][$key]; //file size
$image_temp = $_FILES['image_file']['tmp_name'][$key]; //file temp
$image_type = $_FILES['image_file']['type'][$key]; //file type
$destination_folder = ("test");
$max_size = 800; //max image size in Pixels

$watermark_png_file = 'watermark.png'; //watermark png file
$random_digit=rand(1111,9999);
$newName=$random_digit.$image_name;



//combine random digit to you file name to create new file name
//use dot (.) to combile these two variables


include "db.php";

$query="INSERT INTO neki (`newName`) VALUES('$newName'); ";


mysql_query($query);
switch(strtolower($image_type)){ //determine uploaded image type
//Create new image from file
case 'image/png':
$image_resource = imagecreatefrompng($image_temp);
break;
case 'image/gif':
$image_resource = imagecreatefromgif($image_temp);
break;
case 'image/jpeg': case 'image/pjpeg':
$image_resource = imagecreatefromjpeg($image_temp);
break;
default:
$image_resource = false;
}

if($image_resource){
//Copy and resize part of an image with resampling

list($img_width, $img_height) = getimagesize($image_temp);
if($image_size > 2097152){
echo 'File size must be less than 2 MB';
}



//Construct a proportional size of new image
$image_scale = min($max_size / $img_width, $max_size / $img_height);
$new_image_width = ceil($image_scale * $img_width);
$new_image_height = ceil($image_scale * $img_height);
$new_canvas = imagecreatetruecolor($new_image_width , $new_image_height);

if(imagecopyresampled($new_canvas, $image_resource , 0, 0, 0, 0, $new_image_width, $new_image_height, $img_width, $img_height))
{

if(!is_dir($destination_folder)){
mkdir($destination_folder);//create dir if it doesn't exist
}

//center watermark
$watermark_left = ($new_image_width/1)-(100/1); //watermark left
$watermark_bottom = ($new_image_height/1)-(100/1); //watermark bottom

$watermark = imagecreatefrompng($watermark_png_file); //watermark image
imagecopy($new_canvas, $watermark, $watermark_left, $watermark_bottom, 0, 0, 300, 100); //merge image


//Or Save image to the folder
imagejpeg($new_canvas, $destination_folder.'/'.$newName , 90);


//free up memory
imagedestroy($new_canvas);
imagedestroy($image_resource);
die();
}
}
}
}
*/


spremenjeno: podtalje (14.7.2015, 13:15)
 
 
 
14.7.2015, 13:21
Na prvi pogled ne bi vedel, kaj je narobe, ker koda zgleda OK.

Zakaj ne dela, se je najbolje lotiti na začetku. Prvo vprašanje je, ali dobiš v skripto več slik.

Poskusi za foreach dodati kakšen echo posamezne slike, da vidiš, ali se izpišejo imena.

Opcijsko lahko tudi že pred tem uporabiš funkcijo print_r in izpiši celoten array slik.
 
 
 
14.7.2015, 16:27
Nalozi mi samo eno sliko pa če,tudi preko formule imam nareto da,mi več slik nalozi a mi samo eno inserta v mapo

spremenjeno: napoli (14.7.2015, 16:27)
 
 
 
14.7.2015, 16:37
Torej rabiš en preprost primer kak naložiti več slik na strežnik? (To kodo, ko si ti prilepil ima opravka še z bazo in watermarki...)
 
 
 
14.7.2015, 16:47
zdej sem sprobu mi samo eno sliko prebere z echo
 
 
 
14.7.2015, 16:51
Ja tako
 
 
 
14.7.2015, 18:44
<?php
PrintForm();
if(isset($_FILES["image"]))
SaveImgs($_FILES["image"]);
PrintImgs();
function SaveImgs($file_r)
{
$dir = 'slike';
if(!is_dir($dir))
mkdir($dir, 0777, true);
$count = count($file_r['name']);
for($i=0;$i<$count;$i++)
{
$fn = $dir.'/'.$file_r['name'][$i];
move_uploaded_file($file_r['tmp_name'][$i], $fn);
}
}
function PrintImgs()
{
$dir = 'slike';
if(!is_dir($dir))
return;
if ($handle = opendir($dir))
{
while (false !== ($entry = readdir($handle)))
{
if ($entry == "." || $entry == ".." )
continue;
$fn = $dir.'/'.$entry;
echo '<img src="'.$fn.'" height="50" width="50">';
}
closedir($handle);
}
}
function PrintForm()
{
?>
<br/>
<form method="post" enctype="multipart/form-data">
Izberi slike:<input type="file" name="image[]" multiple="multiple" accept="image/*"/>
<input type="submit" value="upload"/>
</form>
<?php
}
?>


spremenjeno: MC++ (14.7.2015, 18:47)
 
 
 
14.7.2015, 18:49
ka pa watemark
 
 
 
14.7.2015, 18:53
Napisal sem ti primer za vec slik ki pri meni deluje, watermark pa kot vidim ze imas sprogramiran v zgornem primeru, tolko pa se bos ze potrudil pa ga vstavil v kodo
 
 
 
14.7.2015, 18:58
no vela bom sproblm če bo delovalo pa vam javim
 
 
Prijava in registracija
 
 
 
Zmaga.com ponuja brezplačno in razumljivo učenje računalniških programov, vas na enkraten način spozna z različnimi svetovnimi jeziki, s podrobno obrazloženimi recepti prikaže čare kulinarike in vam prežene strahove pred domačimi opravili.
 
 
Poleg tega lahko prebirate poučne članke, ki so namenjene širjenju naše splošne razgledanosti ter preverite svoje znanje z priljubljenim in enostavnim sistemom za preverjanje znanja. Če med vsebinami, ki se dodajajo vsak dan, ne najdete želenega znanja, je za vaša vprašanja na voljo dobro obiskan forum, kjer lahko tudi aktivno sodelujete. V primeru, da bi radi svoje praktično znanje delili z ostalimi, pa to lahko storite preko preprostega vmesnika za dodajanje vsebin. Zmagajte z znanjem z Zmaga.com!