Archief - Algoritme: Probleem met uploadalgoritme [PHP]

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Bertold

Legacy Member
Vooraleerst, ja ik zocht op google en hier, en ja kheb ier al een thread gemaakt ivm dit onderwerp maar die staat al te diep.
En ja kheb ook al zelf de oplossing gezocht maar kgeraak er maar niet aan uit.
zo:)

het probleem ligt dus bij mijn zelfgemaakt (fier) upload-systeem.
Lokaal gaat alles goed maar eens het op de server 'draait' gaat et niet meer...
en het is geen cheapass server meer...
kheb ook mn scripts in éénvoudige vorm hier gezet en alles wat je er niet goed aan vindt moet je maar melden want ik ben nog maar een goeje twee maand met php bezig en dus kan ek nog veel hulp van ervaren mensen gebruiken.
Mijn script bestaat uit vier pagina's:
addalbum1.php, addalbum2.php
addphoto1.php, addphoto2.php
let wel ze staan hier in vereenvoudigde vorm
addalbum1.php:
PHP:
<html>
<head>
</head>
<body>
<form action="nieuwalbum.php" method="post">
Naam van het album:<br />
<input type="text" name="nieuwe_map" />
<br /><br />
<input type="submit" value="Go!" />
</form>
</body>
</html>

addalbum2.php
PHP:
<?php

$nieuwalbum = $_POST['nieuwe_map'];
$fotomap = 'fotos/'.$nieuwalbum.'';
$thumbmap = 'thumbs/'.$nieuwalbum.'';

	if(is_dir($fotomap)){
		$error = 3;
	}else{
		if(mkdir($fotomap)){
			if(chmod($fotomap, 0777)){
				$error = 0;
			}else{
				$error = 1;
			}
		}else{
			$error = 1;
		}
	}
if($error == 0){
	if(is_dir($thumbmap)){
		$error = 3;
	}else{
		if(mkdir($thumbmap)){
			if(chmod($thumbmap, 0777)){
				$error = 0;
			}else{
				$error = 2;
			}
		}else{
			$error = 2;
		}
	}
}
if($error != 0){
	if($error == 1){
		echo 'Error '.$error.': Probleem bij maken van foto-map.';
	}elseif($error == 2){
		echo 'Error '.$error.': Probleem bij maken van foto-map.';
	}elseif($error == 3){
		echo 'Error '.$error.': Albumnaam is reeds in gebruik.';
	}else{
		echo 'Niet nader omschreven fout.';
	}
}else{
echo 'ok';
}
?>

addphoto1.php
PHP:
<html>
<head>
</head>
<body>
<form enctype="multipart/form-data" action="fotoupload.php" method="post">
MAP: <br />
<select name="map">
<?php
if ($handle = opendir("fotos")) {
  while (false !== ($file = readdir($handle))) {
    if (($file != ".") && ($file != "..")) {
      echo '<option value="'.$file.'">'.$file.'</option>';
    }
  }
}
?> 
</select>
<br /><br />
BESTAND<br />
<input type="file" name="file" />
<br /><br />
COMMENT<br />
<input type="text" name="comment" /><br /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>

addphoto2.php
PHP:
<?php
include('functies.php');
$dir = $_POST['map'];
$comment = $_POST['comment'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$file = $_FILES['file']['tmp_name'];
$nieuwe_naam = time();
$afmetingen = getimagesize($file);
$width = $afmetingen['0'];
$height = $afmetingen['1'];
$bestand = "".$nieuwe_naam.".".$type."";
$path = "fotos/".$dir."/".$bestand."";
$sourcefile = $path;
$destfile = "thumbs/".$dir."/".$bestand."";
$forcedwidth = 120;
$forcedheight = 100;
$kbsize = $size / 1024;

/*CHECK VOOR BESTANDSTYPE : ENKEL JPEG/GIF/PNG TOEGELATEN! */
if($type == 'image/jpeg'){
	$type = 'jpeg';
	$error = 0;
}elseif($type == 'image/jpg'){
	$type = 'jpg';
	$error = 0;
}elseif($type == 'image/gif'){
	$type = 'gif';
	$error = 0;
}elseif($type == 'image/png'){
	$type = 'png';
	$error = 0;
}else{
	$error = 1;
}

/*CHECK VOOR BESTANDSGROOTTE : KLEINER DAN 700kb (= 716800b) */
if($error != 0){
}else{
	if($size > 716800){
		$error2 = 2;
	}else{
	}
}

/*UPLOADEN */
if($error != 0){	
}else{
$bestand = "".$nieuwe_naam.".".$type."";
$path = "fotos/".$dir."/".$bestand."";
$sourcefile = $path;
$destfile = "thumbs/".$dir."/".$bestand."";
	if(move_uploaded_file($_FILES['file']['tmp_name'], "$path")){
		if(resampimagejpg( $forcedwidth, $forcedheight, $sourcefile, $destfile )){
			echo 'gelukt';
		}else{
			$error = 4;
		}
	}else{
	$error = 3;
	}
}
if ($error != 0){
	if($error == 1){
		echo 'Error '.$error.': Het bestandstype('.$type.') is onjuist, enkel Jpeg, Gif en Png zijn toegelaten';
	}elseif($error == 2){
		echo 'Error '.$error.': Het bestand is te groot('.$kbsize.'kb, maximum 700kb)';
	}elseif($error == 3){
		echo 'Error '.$error.': Er ging iets mis bij het uploaden van het bestand';
	}elseif($error == 4){
		echo 'Error '.$error.': Er ging iets mis bij het creëren van de thumbnail';
	}else{
		echo 'Error '.$error.': Onverklaarbare fout, neem contact op met de webmaster.';
	}
}else{
}
?>

zo, het probleem is dat ik er niet in slaag foto's up te loaden naar mappen die gechmod zijn via php, als ik ze manueel chmod dan lukt het wel...
Ik heb geen parse errors ofzo dus daar kan het niet aanliggen...
Lokaal werkt alles goed.
Indien je vragen over de serverinstellingen hebt moet je maar vragen

Alvast bedankt voor de hulp die ik hopelijk krijg :p
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan