2011-09-26 133 views
0

如何在html表单中使用“浏览”按钮获取图像路径,选择文件(双击文件返回完整路径),并将结果图像路径放入变量$ img_path?php - 从服务器获取完整图像路径

让我们说在我的服务器的图像目录为/图片,我想获得“foo.jpg”的路径,完整的图像路径应该是“/images/foo.jpg”

如此,我所要做的只是: 1.创建包含“浏览”按钮或类似的表单 - 这允许我探索我的服务器“图像”目录 2.探索“图像”目录,列出所有文件和可点击,找到“foo.jpg”,选择它,瞧,我得到的图像路径“/images/foo.jpg”

任何律”帮助将不胜感激.. 感谢


@CodeCaster感谢您的回应..但是这就是我想要的(至少接近):

<?php 

$dir = '/images'; 
if (!isset($_POST['submit'])) { 
    if ($dp = opendir($dir)) { 
     $files = array(); 
     while (($file = readdir($dp)) !== false) { 
      if (!is_dir($dir . $file)) { 
       $files[] = $file; 
      } 
     } 
     closedir($dp); 
    } else { 
     exit('Directory not opened.'); 
    } 
    if ($files) { 
     echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="post">'; 
     foreach ($files as $file) { 
      echo '<input type="checkbox" name="files[]" value="' . $file . '" /> ' . 
       $file . '<br />'; 
     } 
     echo '<input type="submit" name="submit" value="submit" />' . 
      '</form>'; 
    } else { 
     exit('No files found.'); 
    } 
} else { 
    if (isset($_POST['files'])) { 
     foreach ($_POST['files'] as $value) { 
      echo $dir . $value . '<br />'; 
     } 
    } else { 
     exit('No files selected'); 
    } 
} 

?> 
+0

你说的“浏览按钮”的意思 - 你的意思是一个'<输入型“‘文件’>'那些不能被用来浏览服务器 –

回答

0

你可以使用dir

echo "<ul>"; 

$d = dir("images"); 
echo "Handle: " . $d->handle . "\n"; 
echo "Path: " . $d->path . "\n"; 
while (false !== ($entry = $d->read())) { 
    echo "<li><a href=\"/images/" . $entry . "\">" . $entry . "</a></li>"; 
} 
$d->close(); 

echo "</ul>"; 
0

使用 “目录”,你可以实现你的目标。

<?php 
$d = dir("/etc/php5"); 
echo "Handle: " . $d->handle . "\n"; 
echo "Path: " . $d->path . "\n"; 
while (false !== ($entry = $d->read())) { 
    echo $entry."\n"; 
} 
$d->close(); 
?> 
+0

上的文件与您的代码(和@CodeCaster? )我只能列出文件,我想列出的文件是可点击的,并返回完整的图像路径 –

+0

@php_noob请参阅我的编辑 – CodeCaster

+0

那么如果你有完整的路径,如果你没有任何访问限制,那么你可以肯定使用标签并点击鼠标打开文件 –