Képfeltöltés után hivatkozás kiírása, kép megjelenítése
upload.php tartalma:
És ezt szeretném úgy megcsinálni, hogy képfeltöltés után kiírja a kép linkjét, esetleg magát a képet is mutassa, de megelégednék az előzővel is. Előre is nagyon köszönöm...
■ - <?php
- $imagesonly = false;
- $basedir = ".";
- $filetypesinf = "filetypes.txt";
- $allowfiletyopesonly = true;
- // <--- NO USER EDITABLE PARTS BELOW THIS LINE --->
- session_start();
- if($imagesonly == false AND $allowfiletyopesonly == true)
- {
- $fa = fopen($filetypesinf, 'r');
- while($line = fgets($fa, 1024))
- {
- if(ereg("\n",$line))
- {
- $line = ereg_replace("\n","", $line);
- }
- $filetypes[$line] = $line;
- }
- fclose($fa);
- }
- define("STEP1","<html>\n<head>\n<title>Feltöltés</title>\n</head>\n<form action=\"" .
- $_SERVER['php_self'] . "\" method=\"get\">\nHány fájlt szeretnél feltölteni? <input
- type=\"text\" size=\"1\" value=\"5\" name=\"filestoupload\"/>\n<br />\n<input
- type=\"submit\">\n</form>\n</body>\n</html>");
- $step2 = "<html>\n<head>\n<title>Feltöltés</title>\n</head>\n<form action=\"" .
- $_SERVER['php_self'] . "\" method=\"post\" enctype=\"multipart/form-data\">\n{FORM}\n<input
- type=\"submit\" name=\"upload\" value=\"Feltöltés\" />\n</form></body>\n</html>";
- function map_dirs($path)
- {
- if(is_dir($path))
- {
- if($contents = opendir($path))
- {
- while(($node = readdir($contents)) !== false)
- {
- if($node!="." && $node!="..")
- {
- if(is_dir($path."/".$node) AND is_writable($path .
- "/" . $node))
- {
- $_SESSION['path'] .= "<option value=\"" .
- $path . "/" . $node . "\">" . $path . "/" . $node . "</option>\n";
- map_dirs($path . "/" . $node);
- }
- }
- }
- }
- }
- }
- $_SESSION['path'] = "";
- map_dirs($basedir);
- if(Empty($_POST['upload']))
- {
- if(Empty($_GET['filestoupload']))
- {
- die(STEP1);
- }
- else
- {
- $counter = 1;
- for($i=0; $i != $_GET['filestoupload']; $i++)
- {
- $form .= "File " . $counter++ . "\n<br />\n<input type=\"file\"
- name=\"" . $i . "\" /> Helye: <select name=\"place" . $i . "\" size=\"1\">\n" .
- $_SESSION['path'] . "</select>\n<br />\n";
- }
- die(ereg_replace('{FORM}', $form, $step2));
- }
- }
- else
- {
- foreach($_FILES as $file)
- {
- if(!emptyempty($file['tmp_name']))
- {
- if($imagesonly == true)
- {
- $size = getimagesize($file['tmp_name']);
- if(!$size)
- {
- print $file['name'] . " feltöltése <font
- color=\"ff0000\">sikertelen</font>, mivel az nem kép!\n<br />\n";
- }
- else
- {
- if(@copy($file['tmp_name'], $_POST['place' .
- key($_FILES)] . '/' . $file['name']))
- {
- print $file['name'] . " feltöltése <font
- color=\"00ff00\">sikeres</font>\n<br />\n";
- }
- else
- {
- print $file['name'] . " feltöltése <font
- color=\"ff0000\">sikertelen</font>, mivel belső hiba történt...\n<br />\n";
- }
- }
- }
- else
- {
- if($allowfiletyopesonly == false AND
- !emptyempty($filetypes[$file['type']]))
- {
- print $file['name'] . " feltöltése <font
- color=\"ff0000\">sikertelen</font>, mivel a file típus nem megengedett...(" . $file['type']
- . ")\n<br />\n";
- }
- else
- {
- if(!Is_dir($_POST['place' . key($_FILES)]))
- {
- print $file['name'] . " feltöltése <font
- color=\"ff0000\">sikertelen</font>, mivel a megadott könyvtár nem létezik...\n<br />\n";
- }
- else
- {
- if(@copy($file['tmp_name'], $_POST['place'
- . key($_FILES)] . '/' . $file['name']))
- {
- print $file['name'] . " feltöltése
- <font color=\"00ff00\">sikeres</font>\n<br />\n";
- }
- else
- {
- print $file['name'] . " feltöltése
- <font color=\"ff0000\">sikertelen</font>, mivel belső hiba történt...\n<br />\n";
- }
- }
- }
- next($_FILES);
- }
- }
- }
- }
- ?>
filetypes.txt
tartalma:text/plain
image/gif
application/octet-stream
image/gif
application/octet-stream
És ezt szeretném úgy megcsinálni, hogy képfeltöltés után kiírja a kép linkjét, esetleg magát a képet is mutassa, de megelégednék az előzővel is. Előre is nagyon köszönöm...
<Nincs cím>
<Nincs cím>
<Nincs cím>
Olvass doksit
A PHP dokumentációjában (php.net) az opendir parancs dokumentációjánál legalább 10 példát találsz hasonló dolgokra. Mielőtt postolsz, illene elolvasni a dokumentációkat.