<html>
<body>
<table>
<form action="" method="GET">
<tr><td>Please Enter your KCSE Index Number</td><td><input type="text" id="index_no" name="q" value=""></td></tr>
<tr><td></td><td><input type="Submit" id="print" value="Search"></td></tr>
</form>
</table>
</body>
</html>
<?php
$dir = 'C:\wamp\www\test\admisssionletters';
$exclude = array('.','..','.htaccess');
$q = (isset($_GET['q']))? strtolower($_GET['q']) : '';
$textarea=$_GET['q'];
$res = opendir($dir);
while(false!== ($file = readdir($res)))
{
if(strpos(strtolower($file),$q)!== false &&!in_array($file,$exclude))
{
echo "Click to download or Print your Adm Letter <ahref='$dir/$file'>$file</a>";
echo "<br>";
}
}
closedir($res);
?>
1。 下载链接无效
c:\wamp\www\test\admisssionletters/20400003066_2014.pdf
但是,如果文件名前面的斜杠更改为:
c:\wamp\www\test\admisssionletters\20400003066_2014.pdf
它有效,我怎么能在代码中改变它?
2。 我还想将输入文本中输入的值限制为特定数字,我该如何实现?
答案 0 :(得分:0)
您无法将磁盘上的位置用作超链接。如果您实际上在存储文件的计算机上,那么该位置才有意义。如果你在另一台计算机上,查看网站(远程,不要忘记),那么
'C:\wamp\www\test\admisssionletters\20400003066_2014.pdf';
表示用于查看站点的计算机的C驱动器,而不是托管站点的计算机。或者,如果你没有使用Windows PC,那就什么都没有了!
超链接的格式为http://hostname/resource
,并指向您的网络服务器,然后决定如何处理它们。它可能指向磁盘上的真实文件,也可能不指向(如果您使用框架或其他东西来解释URL)。在你的情况下,我猜C:\ wamp \ www可能是你的网络服务器托管文件的根文件夹。我们还假设,例如,您的计算机的主机名是“mycomputer”。因此,您需要在网站上显示的C:\ wamp \ www \ test \ admisssionletters \ 20400003066_2014.pdf链接
http://mycomputer/test/admisssionletters/20400003066_2014.pdf