Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中打开文件(pdf、word、excel)(使用mysql数据库)_Php_Mysql - Fatal编程技术网

在php中打开文件(pdf、word、excel)(使用mysql数据库)

在php中打开文件(pdf、word、excel)(使用mysql数据库),php,mysql,Php,Mysql,我不熟悉php和mysql。我创建了一个用于上载文件的php页面,这些文件保存到我的本地驱动器。在另一个页面中,当用户选择一个选项时,与该选项相关的文件将以表格格式显示。一列将链接到本地驱动器中的文件。至此,我成功。 问题是,当点击文件超链接时,没有显示任何内容。但是,当我复制文件的地址链接并粘贴到新窗口时,它正在打开。请帮助我,我被问题卡住了两周。 为了进行实验,我创建了一个简单的php文件,只是为了看看超链接是否正常工作。但没有成功。我将在这里粘贴我使用过的轨迹 <?php echo

我不熟悉php和mysql。我创建了一个用于上载文件的php页面,这些文件保存到我的本地驱动器。在另一个页面中,当用户选择一个选项时,与该选项相关的文件将以表格格式显示。一列将链接到本地驱动器中的文件。至此,我成功。 问题是,当点击文件超链接时,没有显示任何内容。但是,当我复制文件的地址链接并粘贴到新窗口时,它正在打开。请帮助我,我被问题卡住了两周。 为了进行实验,我创建了一个简单的php文件,只是为了看看超链接是否正常工作。但没有成功。我将在这里粘贴我使用过的轨迹

<?php echo "<a href=`file:///C|/Inetpub/wwwroot/help.gif' >hi</a>";?>-----not worked
<?php echo "<a href=http://www.google.com>hi</a>";?> ------ working.
<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>
如果文件保存为php文件,则即使标记也不起作用……我使用的是ISp服务器。我的php文件保存在C:\Inetpub\wwwroot\phpsample路径中 请帮我找到解决办法

<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>
--我的原始代码--

<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>
--从表中下载文件的原始代码--

<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>

将此脚本放入与upload2.php位于同一文件夹中的download.php中,并根据需要调用它

<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>
http://localhost/phpsample/upload/download.php?file=FILE
其中FILE是上载的文件名

<form  action="http://localhost/phpsample/upload/upload2.php" method='post'enctype='multipart/form-data'>
Instrument:<select name="flist">
  <option>select</option> 
  <option>gt1</option>
  <option>gt2</option>
  <option>gt3</option>
  <option>gt4</option>
</select>
</br>
Date: <input type="date" name="fdate" /></br>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" />
</form>
<?php


global $dest;
global $name;

$dest='E:\divya';
$name=$_FILES["file"]["name"];
echo $dest;

move_uploaded_file($_FILES["file"]["tmp_name"],"$dest/$name");

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);

mysql_query("INSERT INTO upload_tb (Instrument, date_upload, filename)
VALUES('$_POST[flist]','$_POST[fdate]','$name')");
mysql_close($con);
?>
</body>
</html>
<form  action="http://localhost/phpsample/display/display.php" method='post'enctype='multipart/form-data'>
Instrument:
  <select name="flist">
    <option>select</option>
    <option>gt1</option>
    <option>gt2</option>
    <option>gt3</option>
    <option>gt4</option>
  </select>
</br>
Date: 
<input type="date" name="fdate" /></br>

<input type="submit" />
</form>
<?php

echo $_POST['fdate'];
echo $_POST['flist'];

$path='file:\\\C:\\Inetpub\\wwwroot\\phpsample\\display\\NewTextDocument.txt';


$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("upload_db", $con);


$result = mysql_query("SELECT * FROM upload_tb  WHERE Instrument='$_POST[flist]'");
echo "<table border='1'>
<tr>
<th>Slno</th>
<th>Name</th>
<th>comment</th>
</tr>";
fopen("c:\Inetpub\wwwroot\phpsample\display\NewTextDocument.txt","r");
while($row = mysql_fetch_array($result))
  {
    $filename=$row['filename'];
echo $filename;
  echo "<tr>";
  echo "<td>" . $row['Instrument'] . "</td>";
  echo "<td>" . $row['date_upload'] . "</td>";
  echo "<td>"."<a href= $path>". $row['filename'] ."</a>"."</td>";

  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
</body>
</html>
<?php
$con = mysqli_connect("localhost","root","", "upload_db");
if (!$con) die('Could not connect: ' . mysqli_connect_error());

$name = $_GET['file'];
$query_filename = mysqli_real_escape_string($dbh, $name);

$src = 'E:\divya';

$data = mysqli_query($con, "select filename from upload_tb where filename = '$query_filename'");
if (mysqli_num_rows($data) ! 1) die ('File not uploaded: ' . htmlentities($name));

$path = "$src/$name";
http_send_content_disposition($name);
$type = mime_content_type($path);
http_send_content_type($type);
http_send_file($path);
exit;
?>

应该很明显-当你的链接说打开文件C:/stuff/stuff.txt时,用户的浏览器将尝试在其计算机上的此位置查找文件…您只需要了解如何使用php@dcoder:。目前我正在使用我的系统。我正在尝试访问存储在我正在工作的笔记本电脑上的文件。它仍在工作。@学习者我想像excel一样打开保存的文件,word等。就像在powerpoint中使用超链接打开文件一样。我希望使用phpI的相同功能可以提醒您需要验证文件名。您不希望您的服务器允许人们从您的系统下载任何文件。您应该将其限制为公共目录。实际上,要求用户将文件上载到公用系统上的公用文件夹。在另一个网页上会显示文件。任何访问此网页的人都需要打开此文件。此文件仅在本地网络Intranet上。正如我已经说过的,除单击超链接时打开文件。@barmar。我已尝试过该代码。它对pdf工作正常。但对图像或word无效。请向我提供通过超链接打开文件的完整工作代码。非常感谢。什么不起作用?它不是下载文件,还是下载类型错误?如果是后者,请参阅mime内容类型的文档,可能您需要更新某些配置。它正在下载文件。但下载的文件为空。其中没有任何内容。例如,对于图像,它显示没有可用预览。我不能在不下载的情况下打开文件。