upload script : foto uploaden in bestaande folder

Status
Niet open voor verdere reacties.

zodiak

Gebruiker
Lid geworden
9 okt 2008
Berichten
241
Hallo,

ik heb een script via een tutorial gevolgd maar blijf met 2 problemen zitten:

het script werkt momenteel als volgt:
- ik kan vie upload.php een album aanmaken (dit stuk maakt dan een nieuwe directory op de server) en aangeven hoeveel foto's ik wil uploaden. dit stuk werkt perfect.
- na op aanmaken te klikken zit ik in upload2.php en daar kan ik dan de foto's selecteren die in dit album moeten komen. dit werkt ook goed behalve dan "probleem 1":
- hoewel er soms bij bv 6 foto's te selecteren maar vier worden geupload en de 4de is dan
niet verkleind (blijft volledig formaat).

probleem 2 is dat ik de mogelijkheid zou moeten hebben om in de voorgaande/ of een aangemaakte folder (die door het script werd aangemaakt dus) opnieuw extra foto's te kunnen uploaden in die folder en dat is het stuk dat ik niet voor mekaar krijg.

hieronder de twee scripts:

upload.php
PHP:
<?
session_start();
if(!session_is_registered(myusername)){
header("location:../../i_login.php");
}
?>
<html>
<?php
error_reporting(E_ALL);
include("config.php");

?>
<head>
<title><?php echo("$titel"); ?></title>
<link href="../../ike/modo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
   body { margin: 0; padding: 0; background-color:#212121; color:#FFF; }
   A:link             { color: #FFF; text-decoration:none; }
A:visited          { color: #FFF; text-decoration:none;}
A:active           { color: #FFF; text-decoration:none;}
   
</style>
</head>
<body>
<?php

if(isset($_POST['verder']))
{
$aantal = $_POST['aantal'];
$dir = $_POST['albnaam'];

if(!is_dir($dir))
{
mkdir($dir);

echo("Je album is gegenereerd, <a href=\"upload2.php?aantal=$aantal&dir=$dir\"><b>Klik hier</b></a> om je foto's te uploaden<br><br>");
}
else
{
	echo("Deze album bestaat al, kies een andere albumnaam aub");
}
}
?>

<form method="POST" action="">
<b>Albumnaam:</b> <input type="text" name="albnaam"> (!!GEEN spaties!!)<br><br>
<b>Aantal:</b> <input type="text" name="aantal" size="2"> (hoeveel foto's je wilt uploaden)<br>
<input type="submit" name="verder" value="Ga verder met uploaden!">
</form>

</body>

</html>

upload2.php
PHP:
<?
session_start();
if(!session_is_registered(myusername)){
header("location:../../i_login.php");
}
?>
<html>
<?php
error_reporting(E_ALL);
include("config.php");
 
if (isset($_GET['dir'])) $dir = $_GET['dir'];
else $dir = "";
 
if (isset($_GET['aantal'])) $a_velden = $_GET['aantal'];

?>
 
<head>
<title><?php echo("$titel"); ?></title>
<link href="../../ike/modo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
   body { margin: 0; padding: 0; background-color:#212121; color:#FFF; }
   A:link             { color: #FFF; text-decoration:none; }
A:visited          { color: #FFF; text-decoration:none;}
A:active           { color: #FFF; text-decoration:none;}
   
</style>
</head>
<body>
 
<form method="POST" action="" enctype="multipart/form-data">
<?php
 
for($i=0; $i < $a_velden; $i++) {
    echo "<b>Foto $i:</b> <input type=\"file\" name=\"$i\"/> <br><br>";
    if(isset($_POST['uploaden'])) {
        $tmp_bestand = $_FILES[$i]['tmp_name'];
        $bestand = $_FILES[$i]['name'];
        move_uploaded_file($tmp_bestand, $dir."/".$bestand);
        chmod ($dir."/".$bestand, 0777);
 
        $bron = imagecreatefromjpeg($dir."/".$bestand) or die ("JPEG Probleem");
        $b_breedte = imagesx($bron);
        $b_hoogte = imagesy($bron);
        $max_breedte = "400";
        
        $verhouding = $b_breedte / $max_breedte;
        $nieuw_breedte = round($b_breedte / $verhouding);
        $nieuw_hoogte = round($b_hoogte / $verhouding);
        
        if ($b_breedte > $max_breedte) {
            $nieuw_jpg = imagecreatetruecolor($nieuw_breedte ,$nieuw_hoogte) or die ("Probleem met maken van plaatje jpg");
            imagecopyresampled($nieuw_jpg, $bron, 0, 0, 0, 0, $nieuw_breedte, $nieuw_hoogte, $b_breedte, $b_hoogte);
            Imagejpeg($nieuw_jpg,$dir."/".$bestand,120); 
        }
        
        echo "  <a href=\"$loc/fotoalbum.php?album=./$dir\"><b>Klik hier</b></a> om je album te bekijken<br><br>
                <a href=\"$loc/upload.php\"><b>Klik hier</b></a> om nog een album aan te maken";
    }
}
?>
<input type="submit" name="uploaden" value="Uploaden!">
</form>
 
</body>
</html>

kan iemand mij hierin helpen?
alvast bedankt
 
Als ik probleem #2 goed begrijp, wil je een van de volgende dingen:
- Als je een foldernaam intypt die al bestaat, dat je alsnog foto's kunt toevoegen, en niet de mededeling krijgt dat de map al bestaat (en je dus een andere naam moet intypen)
- of, je wilt een overzichtje van alle mappen, zodat je er een kunt selecteren en daarin meer foto's kunt uploaden.

Streepje één is zeer simpel te maken:
Regel 40 vervangen voor:
PHP:
    echo("Je album bestaat al, <a href=\"upload2.php?aantal=$aantal&dir=$dir\"><b>Klik hier</b></a> om meer foto's te uploaden<br><br>");
Je maakt dan geen nieuwe map aan, maar je gaat wel door naar upload2.php om de foto's te uploaden.


Streepje twee kost wat meer werk:
1) Je wilt een folder kunnen selecteren
2) Je moet dus weten welke folders er zijn
3) Je moet de folders afdrukken op het scherm (incl. datum waarop ze gemaakt zijn)
4) Je moet doorlinken naar upload2.php, zodat je foto's kunt toevoegen.

1*) Folders selecteren kan via URLs, dus als je eenmaal weer welke folders er zijn, kun je gebruik maken van:
PHP:
    echo("<a href=\"upload2.php?aantal=$aantal&dir=$FOLDERNAAM\">".$FOLDERNAAM."</a><br>");
let op dat je dan nog wel "$aantal" moet invullen met een waarde.

2*) Om erachter te komen welke folders er al bestaan op de server maak je gebruik van "scandir" (let op! werkt alleen in PHP5!)
Deze functie geeft een array terug. Met een foreach loopje kun je deze uitlezen, en kijken of de waarde die eruit komt een map is (is_dir of niet. Let wel op "." (enkele punt) en ".." (2 punten) zijn ook mappen! Namelijk "." is de huidige map en ".." is de map als je één "omhoog" gaat.
Met een ifje kun je zoeken of de waarde uit de array van scandir een . of .. is, zoja dan moet je deze overslaan.

3*) Om erachter te komen wanneer een file/map aangemaakt is, maak je gebruik van filemtime
PHP:
<?PHP echo date ("Y-m-d H:i:s", filemtime($path)); ?>

4*) Gezien je het aantal foto's dat je wilt uploaden wilt meegeven, moet je gebruik maken van een stukje javascript, of een FROM.
javascript zal er ongeveer zo uitzien:
Code:
<script language="javascript" type="text/javascript">
<!--
function GoNow( dir )
{
	aantal = document.getElementById('Aantal').value;
	document.location = "upload2.php?aantal="+ aantal +"&dir="+ dir;
}
-->
</script>

<input type="text" value="" id="Aantal">
<a onClick="javascript:GoNow('fotos_vakantie')">fotos_vakantie</a>
<a onClick="javascript:GoNow('fotos_turkije')">fotos_turkije</a>
<a onClick="javascript:GoNow('geen_fotos')">geen_fotos</a>
(let op: code is NIET getest)

Als je gebruik wilt maken van de form, dan maak je voor ELKE folder een radio button (zodat je er maar één kunt selecteren) en een input veld voor het aantal foto's. Via een submit button verstuur je de data en komt het in de $_POST te staan die je uitleest en gebruikt zoals je al doet :D


Probleem #1
Ik zie zo snel niets fouts in het script: krijg je een error?
Als je elke keer maximaal 4 foto's kunt uploaden, terwijl je er eigenlijk meer uploade, dan kan dat ook aan de php.ini configuratie liggen (is nieuw sinds PHP5.2.7+ (oid))
Code:
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M


; Maximum number of files that can be uploaded via a single request
[B]max_file_uploads = 20[/B]

Als je een error krijgt, dan hoor ik het graag...

M.v.g.
Jeffrey
 
Als ik probleem #2 goed begrijp, wil je een van de volgende dingen:
- Als je een foldernaam intypt die al bestaat, dat je alsnog foto's kunt toevoegen, en niet de mededeling krijgt dat de map al bestaat (en je dus een andere naam moet intypen)
- of, je wilt een overzichtje van alle mappen, zodat je er een kunt selecteren en daarin meer foto's kunt uploaden.

Streepje één is zeer simpel te maken:
Regel 40 vervangen voor:
PHP:
    echo("Je album bestaat al, <a href=\"upload2.php?aantal=$aantal&dir=$dir\"><b>Klik hier</b></a> om meer foto's te uploaden<br><br>");
Je maakt dan geen nieuwe map aan, maar je gaat wel door naar upload2.php om de foto's te uploaden.


Streepje twee kost wat meer werk:
1) Je wilt een folder kunnen selecteren
2) Je moet dus weten welke folders er zijn
3) Je moet de folders afdrukken op het scherm (incl. datum waarop ze gemaakt zijn)
4) Je moet doorlinken naar upload2.php, zodat je foto's kunt toevoegen.

1*) Folders selecteren kan via URLs, dus als je eenmaal weer welke folders er zijn, kun je gebruik maken van:
PHP:
    echo("<a href=\"upload2.php?aantal=$aantal&dir=$FOLDERNAAM\">".$FOLDERNAAM."</a><br>");
let op dat je dan nog wel "$aantal" moet invullen met een waarde.

2*) Om erachter te komen welke folders er al bestaan op de server maak je gebruik van "scandir" (let op! werkt alleen in PHP5!)
Deze functie geeft een array terug. Met een foreach loopje kun je deze uitlezen, en kijken of de waarde die eruit komt een map is (is_dir of niet. Let wel op "." (enkele punt) en ".." (2 punten) zijn ook mappen! Namelijk "." is de huidige map en ".." is de map als je één "omhoog" gaat.
Met een ifje kun je zoeken of de waarde uit de array van scandir een . of .. is, zoja dan moet je deze overslaan.

3*) Om erachter te komen wanneer een file/map aangemaakt is, maak je gebruik van filemtime
PHP:
<?PHP echo date ("Y-m-d H:i:s", filemtime($path)); ?>

4*) Gezien je het aantal foto's dat je wilt uploaden wilt meegeven, moet je gebruik maken van een stukje javascript, of een FROM.
javascript zal er ongeveer zo uitzien:
Code:
<script language="javascript" type="text/javascript">
<!--
function GoNow( dir )
{
	aantal = document.getElementById('Aantal').value;
	document.location = "upload2.php?aantal="+ aantal +"&dir="+ dir;
}
-->
</script>

<input type="text" value="" id="Aantal">
<a onClick="javascript:GoNow('fotos_vakantie')">fotos_vakantie</a>
<a onClick="javascript:GoNow('fotos_turkije')">fotos_turkije</a>
<a onClick="javascript:GoNow('geen_fotos')">geen_fotos</a>
(let op: code is NIET getest)

Als je gebruik wilt maken van de form, dan maak je voor ELKE folder een radio button (zodat je er maar één kunt selecteren) en een input veld voor het aantal foto's. Via een submit button verstuur je de data en komt het in de $_POST te staan die je uitleest en gebruikt zoals je al doet :D


Probleem #1
Ik zie zo snel niets fouts in het script: krijg je een error?
Als je elke keer maximaal 4 foto's kunt uploaden, terwijl je er eigenlijk meer uploade, dan kan dat ook aan de php.ini configuratie liggen (is nieuw sinds PHP5.2.7+ (oid))
Code:
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M


; Maximum number of files that can be uploaded via a single request
[B]max_file_uploads = 20[/B]

Als je een error krijgt, dan hoor ik het graag...

M.v.g.
Jeffrey

hallo , bedankt voor de reactie.

Punt #1 ik weet niet hoeveel ik per keer mag uploaden volgens de php.ini aangezien ik daar waarschijnlijk geen toegang tot heb. de webhost laat dit volgens mij niet toe. een error krijg ik niet , waarschijnlijk zal dit ergens in de log staan. ik weet wel dat de hosting geen GD of imagemagic toelaat, dus misschien is dat het probleem.

Punt #2 dit ga ik zo vlug mogelijk eens proberen maar de 2de optie moet ik die dan in de upload.php zetten of in de andere(upload2.php) en waar zet ik dat het beste?

alvast bedankt
 
ik heb nog een ander probleem ook, ik heb een script met tutorial gevonden om een mooie pop te krijgen met jquery, de tutorial is in het engels en geraak er echt niet wijs uit.

wat ik dus wil bekomen is dat ik hetgeen ik al heb behouwd tot wanneer er op een foto word geklikt. vanaf dan moet ik inplaats van window.open dit andere script kunnen gebruiken.

nu is de vraag welk stuk uit het script moet ik nemen en waar moet ik dat dan juist in mijn script plaatsen, want dat begrijp ik niet zo goed?

dit zijn de scripts:
DEMO SCRIPT VAN http://tutorialzine.com/2009/09/cool-jquery-gallery/
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>A Really Cool jQuery Gallery Demo | Tutorialzine</title>
<link rel="stylesheet" type="text/css" href="lightbox/css/jquery.lightbox-0.5.css" />
<link rel="stylesheet" type="text/css" href="demo.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="lightbox/js/jquery.lightbox-0.5.pack.js"></script>
<script type="text/javascript" src="script.js"></script>

</head>

<body>

<div id="container">

<div id="heading">
<h1>A really cool jQuery gallery</h1>
</div>

<div id="gallery">

<?php

$directory = 'gallery';

$allowed_types=array('jpg','jpeg','gif','png');
$file_parts=array();
$ext='';
$title='';
$i=0;

$dir_handle = @opendir($directory) or die("There is an error with your image directory!");

while ($file = readdir($dir_handle)) 
{
	if($file=='.' || $file == '..') continue;
	
	$file_parts = explode('.',$file);
	$ext = strtolower(array_pop($file_parts));

	$title = implode('.',$file_parts);
	$title = htmlspecialchars($title);
	
	$nomargin='';
	
	if(in_array($ext,$allowed_types))
	{
		if(($i+1)%4==0) $nomargin='nomargin';
	
		echo '
		<div class="pic '.$nomargin.'" style="background:url('.$directory.'/'.$file.') no-repeat 50% 50%;">
		<a href="'.$directory.'/'.$file.'" title="'.$title.'" target="_blank">'.$title.'</a>
		</div>';
		
		$i++;
	}
}

closedir($dir_handle);

?>
<div class="clear"></div>
</div>

<div id="footer">
<h2>This is a <a href="http://tutorialzine.com/" target="_blank">tutorialzine</a> demo. Go to the <a href="http://tutorialzine.com/2009/09/cool-jquery-gallery/" target="_blank">original tutorial</a>, or <a href="demo.zip">download the source code</a>.</h2>
</div>

</div>

</body>
</html>

mijn huidige scripts

1 fotoalbum.php
PHP:
<?php

include("config.php");

if (isset($_GET['album'])) {

	$album = $_GET['album'];

} else {

	$album = ".";

}



if (isset($_GET['page'])) {

	$page = $_GET['page'];

} else {

	$page = 0;

}



$cols			= "4";	

$rows			= "3";			

$max_thumb_width	= "100";		

$max_thumb_height	= "70";			



$thumbs			= "$album/thumbs";	

$header			= eregi_replace("_", " ", $album);



if ($cols % 2 == 0) {

	$colspan = "";

} else {

	$colspan = "colspan=2";

}



?>



<html>

<head>

<title>Modo-eetcafe: Fotoalbum</title>

<link href="../../ike/modo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
   body { margin: 0; padding: 0; background-color:#212121; color:#FFF; }
   A:link             { color: #FFF; text-decoration:none; }
A:visited          { color: #FFF; text-decoration:none;}
A:active           { color: #FFF; text-decoration:none;}
   
</style>
</head>



<body>


<div align="center">



<?php





if ($album != "" && !is_dir($album)) {



	

	echo "<h2>Fout:</h2>\n";

	echo "<p>Het door u gevraagde album bestaat niet. Selecteer een album uit de lijst hieronder.</p>\n";



	$album = ".";

}





$mydir = opendir($album);





$aantal_subdirs	= 0;

$aantal_fotos	= 0;



while ($filename = readdir($mydir)) {



	if (is_dir($album."/".$filename) && $filename != "." && $filename != ".." && $filename != "thumbs") {

		$subdir[$aantal_subdirs] = $filename;

		$aantal_subdirs++;

	}




	if (is_file ($album."/".$filename) && eregi("\.jpg$|\.jpeg$|\.gif$|\.bmp$|\.png$", $filename)) {

		$foto[$aantal_fotos] = $filename;

		$aantal_fotos++;

	}

}





closedir($mydir);




$map	= $album;

$i 	= 1;



$directory_tree[0] = $map;



while ($map != ".") {



	$last_slash_pos = strlen($map) - strpos(strrev($map), "/");

	$map = substr ($map, 0, $last_slash_pos - 1);



	$directory_tree[$i] = $map;

	$i++;



}




for ($i = count ($directory_tree) - 1 ; $i >= 0; $i--) {



	$last_slash_pos = strlen($directory_tree[$i]) - strpos(strrev($directory_tree[$i]), "/");

	$directory_name = substr($directory_tree[$i], $last_slash_pos);

	$directory_name = eregi_replace("_", " ", $directory_name);



	if ($directory_name != "") {

		echo "&nbsp;&nbsp; > &nbsp;&nbsp;";

	}



	echo "<a href=\"fotoalbum.php?album=$directory_tree[$i]&pid=1\">";



	if ($directory_name != "") {

		echo $directory_name;

	} else {

		echo "Fotoalbums";

	}

	echo "</a>";

}



echo "<hr><br>";




if ($aantal_subdirs > 0) {



	sort ($subdir);



	echo "<table>\n";

	for ($i =0; $i < $aantal_subdirs; $i++) {

		$directory_name = eregi_replace("_", " ", $subdir[$i]);

		echo "<tr><td><a href=\"fotoalbum.php?pid=1&album=$album/$subdir[$i]\">$directory_name</a></td></tr>\n";

	}

	echo "</table>";

}




if ($aantal_fotos > 0) {




	sort ($foto);




	$eerste_foto	= (($page * $cols * $rows) + 1);

	$laatste_foto	= (($page + 1) * $cols * $rows);




	echo "<table border=0 cellpadding=10 cellspacing=0><tr>\n";




	for ($i = $eerste_foto - 1; ($i < $aantal_fotos) && ($i < $laatste_foto); $i++) {



		ClearStatCache();




		$size = GetImageSize("$album/$foto[$i]");




		$size[0] = $size[0] + 165;

		$size[1] = $size[1] + 185;




		$file_size = fileSize("$album/$foto[$i]");

		$file_size = round($file_size / 1000) . "k";




		$display = eregi_replace(".jpg|.jpeg|.gif|.bmp|.png", "", $foto[$i]);

		$display = eregi_replace("_", " ", $display);



		echo ("<td $colspan><a href=\"$album/$foto[$i]\" onmouseover=\"window.status='Vergroten';return true;\"

			onmouseout=\"window.status=''; return true\"

		onclick=\"window.open('show_foto.php?album=$album&fotonr=$i', 'pix$i', 'width=$size[0], height=$size[1], innerwidth=$size[0], innerheight=$size[1], directories=no, location=no, menubar=no, scrollbars=yes, status=no, toolbar=no, resizable=yes, top=0, left=0, leftmargin=0, topmargin=0, marginwidth=0, marginheight=0, screenX=0, screenY=0' ); return false\">\n");


		$entry_without_ext = eregi_replace("\.jpg$|\.jpeg$|\.gif$|\.bmp$|\.png$", "", $foto[$i]);




		switch (true) {

			case (is_file($thumbs."/".$entry_without_ext.".jpg")):

				$thumbnail = $thumbs."/".$entry_without_ext.".jpg";

				break;



			case (is_file($thumbs."/".$entry_without_ext.".jpeg")):

				$thumbnail = $thumbs."/".$entry_without_ext.".jpeg";

				break;



			case (is_file($thumbs."/".$entry_without_ext.".gif")):

				$thumbnail = $thumbs."/".$entry_without_ext.".gif";

				break;



			case (is_file($thumbs."/".$entry_without_ext.".bmp")):

				$thumbnail = $thumbs."/".$entry_without_ext.".bmp";

				break;



			case (is_file($thumbs."/".$entry_without_ext.".png")):

				$thumbnail = $thumbs."/".$entry_without_ext.".png";

				break;



			default:

				$thumbnail = "";

		}



		if ($thumbnail == "") {


			if (! eregi("\.jpg$|\.jpeg$", $foto[$i])) {


				echo "Geen thumbnail beschikbaar...<br>\n";

			} else {





				if (! is_dir ($thumbs)) {

					mkdir("$thumbs");

				}



				set_time_limit(20);



				$photo = imagecreatefromjpeg ("$album/$foto[$i]");




				$photo_width         = imagesx ($photo);

				$photo_height        = imagesy ($photo);



				if ($photo_width > $max_thumb_width || $photo_height > $max_thumb_height) {




					if ($photo_width / $photo_height > $max_thumb_width / $max_thumb_height) {



						$new_thumb_width = $max_thumb_width;




						$value = $photo_width / $max_thumb_width;

						$new_thumb_height = round ($photo_height / $value);



					} else { 

						

						$new_thumb_height = $max_thumb_height;




						$value = $photo_height / $max_thumb_height;

						$new_thumb_width= round ($photo_width / $value);

					}



				} else {




					$new_thumb_width	= $photo_width;

					$new_thumb_height	= $photo_height;

				}




				$create_thumb = imagecreatetruecolor ($new_thumb_width, $new_thumb_height);




				imagecopyresampled (

					$create_thumb,

					$photo,

					0, 0, 0, 0,

					$new_thumb_width,

					$new_thumb_height,

					$photo_width,

					$photo_height);




				ImageJpeg ($create_thumb, $thumbs."/".$entry_without_ext.".jpg", 90);




				$thumbnail = $thumbs."/".$entry_without_ext.".jpg";



				Imagedestroy($photo);



			}	

		}		



		$thumbsize = GetImageSize($thumbnail);


		echo "<img src='$thumbnail' border=0 width=$thumbsize[0] height=$thumbsize[1] alt=$i>\n";







		if (($i % $cols) == $cols -1 ) {

			echo "</tr>\n<tr>\n";

		}



	}	



	$pages		= ($aantal_fotos / ($cols * $rows));

	$nextpage	= ($page + 1);

	$prevpage	= ($page - 1);



	

	if (($page + 1) < $pages) {



		$aantal_op_volgende = $aantal_fotos - $nextpage * $rows * $cols;




		if ($aantal_op_volgende > $rows * $cols) {

			$aantal_op_volgende = $rows * $cols;

		}




		if ($aantal_op_volgende == 1) {

			$volgende = "<a href='".$_SERVER["PHP_SELF"]."?album=$album&page=$nextpage&pid=1' target='_self'>Volgende foto </a>";

		} else {

			$volgende = "<a href=?album=$album&page=$nextpage&pid=1>Volgende ". $aantal_op_volgende ." foto's </a>";

		}

	} else {

		$volgende = "";

	}



	if (($page+1) > "1") {


		if ($rows * $cols > 1) {

			$vorige = "<a href=?album=$album&page=$prevpage&pid=1>Vorige ". ($rows * $cols) ." foto's </a>";

		} else {

			$vorige = "<a href=?album=$album&page=$prevpage&pid=1>Vorige foto </a>";

		}

	} else {

		$vorige = "";

	}



	if ($cols % 2 == 1) {

		$footer_colspan = "colspan=$cols";

	} else {

		$footer_colspan = "colspan=" . ($cols / 2);

	}



	echo "</tr><tr><td $footer_colspan align=right>	$vorige		</td>\n";

	echo "<td $footer_colspan align=left>		$volgende	</td>\n";

	echo "</tr>\n";

	echo "</table>\n";



} 	





?>



</div>

</body>

</html>

show_foto.php
PHP:
<?php 
include("config.php");

?> 

<html> 
<head> 
<title>Modo-eetcafe: foto's</title> 
<link href="../../ike/modo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
   body { margin: 0; padding: 0; background-color:#212121; color:#FFF; }
   A:link             { color: #FFF; text-decoration:none; }
A:visited          { color: #FFF; text-decoration:none;}
A:active           { color: #FFF; text-decoration:none;}
   
</style>
 
</head> 

<body>

<div align="center"> 

<?php 


if (isset($_GET['album'])) { 
    $album = $_GET['album']; 
} else { 
    echo "<H2> Fout ! </H2>\n"; 
    echo "<p>Geen album aangevraagd.</p>\n"; 
    echo "</body></html>\n"; 
    exit; 
} 


if ($album != "" && !is_dir($album)) {  

    
    echo "<h2>Fout:</h2>\n"; 
    echo "<p>Het door u gevraagde album bestaat niet.</p>\n"; 
    echo "</body></html>\n"; 
    exit; 
} 

if (isset($_GET['fotonr'])) { 
    $fotonr = $_GET['fotonr']; 
} else { 
    $fotonr = 0; 
} 


$aantal_fotos    = 0; 


$mydir = opendir($album); 


while ($filename = readdir($mydir)) { 

     
    if (is_file ($album."/".$filename) && eregi("\.jpg$|\.jpeg$|\.gif$|\.bmp$|\.png$", $filename)) {  
        $foto[$aantal_fotos] = $filename; 
        $aantal_fotos++; 
    } 
}  

 
closedir($mydir); 

 
if ($aantal_fotos == 0) { 
    
    echo "<h2>Fout:</h2>\n"; 
    echo "<p>Er bestaan geen foto's in dit album...</p>\n"; 
    echo "</body></html>\n"; 
    exit; 
} 

if ($fotonr > $aantal_fotos) { 
     
    echo "<h2>Fout:</h2>\n"; 
    echo "<p>Gevraagde foto bestaat niet...</p>\n"; 
    echo "</body></html>\n"; 
    exit; 
} 

if ($fotonr < 0) { 
    
    echo "<h2>Fout:</h2>\n"; 
    echo "<p>Gevraagde foto bestaat niet...</p>\n"; 
    echo "</body></html>\n"; 
    exit; 
} 

     
sort ($foto); 

ClearStatCache();  

 
$size = GetImageSize("$album/$foto[$fotonr]");  
$size[0] = $size[0] + 35; 
$size[1] = $size[1] + 85; 

echo "<script type=\"text/javascript\" language=\"JavaScript\">\n"; 
echo "<!--\n"; 
echo "\twindow.resizeTo($size[0],$size[1]);\n"; 
echo "//-->\n"; 
echo "</script>\n"; 

     
$display = eregi_replace(".jpg|.jpeg|.gif|.bmp|.png", "", $foto[$fotonr]); 
$display = eregi_replace("_", " ", $display); 

echo "<table border=0>\n"; 
echo "<tr><td colspan=2>\n"; 
echo "<img src=\"$album/$foto[$fotonr]\" />\n"; 
echo "</td></tr>\n"; 

$nextfoto    = ($fotonr + 1);  
$prevfoto    = ($fotonr - 1);  


if ($nextfoto < $aantal_fotos) {  
    $volgende = "<a href=?album=$album&fotonr=$nextfoto>Volgende foto </a>";  
} else { 
    $volgende = "&nbsp;"; 
} 

if ($fotonr != 0) { 
    $vorige = "<a href=?album=$album&fotonr=$prevfoto>Vorige foto </a>";  
} else { 
    $vorige = "&nbsp;"; 
} 

 
echo "<tr><td align=right width=50%>    $vorige    &nbsp;&nbsp;    </td>\n"; 
echo "<td align=left width=50%>        &nbsp;&nbsp; $volgende    </td>\n"; 
echo "</tr>\n"; 
echo "</table>\n";  
?>  

</div> 
</body> 
</html>

ik vermoed dus dat ik het ergens moet vervangen in show_foto.php maar weet niet wat waar en hoe , ook niet met die tutorial.

alvast bedankt als iemand mij kan helpen
 
Punt #2 dit ga ik zo vlug mogelijk eens proberen maar de 2de optie moet ik die dan in de upload.php zetten of in de andere(upload2.php) en waar zet ik dat het beste?

Je kunt het stuk script in upload.php zetten, je kunt ook een nieuwe file aanmaken, en via een URL linken vanaf upload.php naar die nieuwe file.

Andere vraag zal ik later op reageren, daar heb ik nu even geen tijd voor.

Gegroet,
Jeffrey
 
Je kunt het stuk script in upload.php zetten, je kunt ook een nieuwe file aanmaken, en via een URL linken vanaf upload.php naar die nieuwe file.

Andere vraag zal ik later op reageren, daar heb ik nu even geen tijd voor.

Gegroet,
Jeffrey

Ok thanks , trouwens de gemakkelijkste oplossing voor extra foto's te uploaden is al in orde en werkt al goed.

alvast bedankt
 
Je kunt het stuk script in upload.php zetten, je kunt ook een nieuwe file aanmaken, en via een URL linken vanaf upload.php naar die nieuwe file.

Andere vraag zal ik later op reageren, daar heb ik nu even geen tijd voor.

Gegroet,
Jeffrey

O ja , bij deze het demo script (zie bijlage) dat ik dus zou willen integreren in mijn show_foto.php , heb dit weekend al een aantal dingen geprobeert bv waar in demo.php $directory staat vervangen door $album , en zo nog een paar dingetjes maar het lukt blijkbaar echt niet.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan