Vraag Meerdere foto's uploaden met compressie

#1
Hallo,

Ik heb een vraagje,

In Html heb ik een forum gemaakt waar je meerdere foto's kunt uploaden. Maar nu loop ik tegen een probleem aan.....de meesten foto's die je wilt uploaden zijn groter dan de maximale 2MB die mag uploaden in PHP. Dus ben ik op internet eens fink gaan zoeken naar PHP image compression. Hier legt echter niemand uit hoe dit werkt bij meerdere foto's.....

Hier is mijn code:

--HTML--

Attachment:<br>
<input class="form-control" type="file" name="attachments[]" id="attachments" multiple style="width:300px">

--PHP--

for($i = 0; $i < count($_FILES['attachments']['name']); $i++) {
$filetmp = $_FILES["attachments"]["tmp_name"][$i];
$filename = $_FILES["attachments"]["name"][$i];
$filepath = "images/".$filename;

move_uploaded_file($filetmp,$filepath);

$querypictureupload = "INSERT INTO file_upload (filename)
VALUES ('$filename')";
$result = mysqli_query($conn, $querypictureupload);
}

--HTML--

Attachment:<br>
<input class="form-control" type="file" name="image" id="image" style="width:300px">

--PHP--

if (isset($_POST['submit'])) {
$target = "images/";
$target = $target.basename($_FILES['image']['name']);

$photo_name = ($_FILES['image']['name']);
$imageFileType = pathinfo($target, PATHINFO_EXTENSION);
$file = $photo_name;

$query = "INSERT INTO photos(image) VALUES ('$file')";
$result = mysqli_query($conn, $query);

if ($result && compress($_FILES['image']['tmp_name'], $target, 50)) {
echo "<script>alert('Image uploaded')</script>";
}
else {
echo "<script>alert('An error occured')</script>";
}
}

--FUNCTIONS.PHP--

function compress($source, $destination, $quality){
$info = getimagesize($source);

if ($info['mime'] == 'image/jpeg')
$image = imagecreatefromjpeg($source);
elseif ($info['mime'] == 'image/gif')
$image = imagecreatefromgif($source);
elseif ($info['mime'] == 'image/png')
$image = imagecreatefrompng($source);

imagejpeg($image, $destination, $quality);

return $destination;
}

Zoals hier boven in het 1e bestand te zien is kan je meerdere foto's uploaden, waar je in de 2e maar 1 kan uploaden maar deze wel verkleind wordt......

Is er iemand die mij kan helpen met het samenvoegen van deze 2 bestanden zodat je meerdere foto's kunt oploaden en dezen worden verkleind! Zelf had ik geprobeert op de function te verwerken in de for loop maar dat lukt niet helemaal..

Alvast bedankt
 

Abraham54

Administrator
Medewerker
#2
Wil jij van jou server een afbeeldingenserver maken?
Heb jij op jou server onbepaalde opslag (onder onder voorwaarden)?

En een andere vraag: welke forumsoftware heb jij gekozen?
 
#3
Wil jij van jou server een afbeeldingenserver maken?
De foto's worden toegevoegd in een map genaamd images die inderdaad op de server staat........de naam de foto's worden toegevoegd in een MySQL database. (Zonder SQL injectie zie ik nu:oops:)

Heb jij op jou server onbepaalde opslag (onder onder voorwaarden)?
Het probleem is niet de opslag op de server.....meer de wachttijd voor het uploaden mede omdat hij daarna een FPDF maakt en deze verstuurd via PHPMailer.

En een andere vraag: welke forumsoftware heb jij gekozen?

Wat bedoeld u met forumsoftware?


Dus eigenlijk komt het erop neer dat ik niet weet hoe ik de compressie toepas in mijn for loop
 

Abraham54

Administrator
Medewerker
#4
Is het de bedoeling dat jouw afbeeldingenforum gebruikt gaat worden voor weergave van foto's op andere sites, of is het de bedoeling dat jij zelf dus een forum wordt zodat mensen via jouw forum foto's kunnen laten zien?

Met forum bedoel ik software zoals waar dit forum mee werkt.
 
#5
Ik heb denk ik een foutje gemaakt in de vraag stelling ik bedoel een form inplaats van een forum.....dus het is een form met een <input type"file"> button.....deze upload de file op de server in de map images.....en de naam van de file komt in de MySQL database. Maar dit gaat fout als je te groten bestanden wilt versturen......nu heb ik in de PHP.ini aangepast naar 50M maar dit is maar een tijdelijke oplossing want het uploaden van de foto, FPDF, PHPMailer duurt nu ongeveer 15sec maar dit komt eigenlijk maar door 1 ding omdat de foto's te groot zijn
 

Abraham54

Administrator
Medewerker
#6
Ik ben webmaster van 6 WordPress sites.

Foto's die gepost worden worden door het programma Webresizer aangepast op tweeërlei wijze:
a) het formaat
b) de digitale diepte (76 bij voorkeur voor web weergave)
 

Abraham54

Administrator
Medewerker
#7
Ik wil er nog aan toevoegen, dat het mij nog steeds niet duidelijk is wat jij nu bereiken wil met foto's van jouw zelf en van anderen.