簡體   English   中英

使用html表單和php從源目錄搜索和下載文件

[英]Search and Download file from a source directory using html form and php

我在目錄中有類似pdf的文件,並且我創建了一個搜索表單,用戶可以在其中輸入文件代碼,如果它與文件名匹配,它將在源目錄中搜索,它將允許用戶下載文件,如果沒有,它將顯示“沒有結果”這是我所做的,但是我不確定應該使用什么代碼從源目錄下載文件,我只是看到了在某處下載文件並將源文件替換為我使用的變量的代碼。用戶搜索

<html>
          <head>
            <title>Search  Contacts</title>
          </head>
          <body>

            <h3>Search Client File</h3>
            <form  method="post" action="#"  id="searchform">
              Type the File Code:<br><br>
                  <input  type="text" name="fcode">
            <br>
      <input  type="submit" name="submit" value="Search">
            </form>

<?php
$filecode=$_POST["fcode"];
     if (!empty($filecode))
     {
 $ch = curl_init();
$source = "/sdir/$filecode.pdf";
curl_setopt($ch, CURLOPT_URL, $source);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec ($ch);
curl_close ($ch);

$destination = "/tdir/afile.pdf";
$file = fopen($destination, "w+");
fputs($file, $data);
fclose($file);
     }
     else
     {
       echo "No Results";
     }

        ?>
    </body>
    </html>

我認為您的問題與$file="<sourcefile?>"行有關,因為(至少對我而言)這沒有道理。 但是,如果確保PHP已打開錯誤日志記錄,然后查找PHP錯誤日志文件,則可以更好地了解問題。

類似於(在PHP頁面頂部):

抱歉,此代碼較舊:

ini_set("log_errors", 1);
ini_set("error_log", "/tmp/php-error.log");

參見: https : //stackoverflow.com/a/3531852/3536236

更新的方式:

    ini_set("error_log", "/tmp/php-error.log");
    error_reporting(E_ALL);

這意味着您可以隨后下載並查看日志文件"/tmp/php-error.log" ,這將解釋PHP失敗的原因,如果確實失敗了。

很抱歉,我無法為您提供更准確的答案,但這將向您確切說明問題所在,而不是有些含糊的“不起作用”。

如何下載文件

http://www.media-division.com/the-right-way-to-handle-file-downloads-in-php/

https://stackoverflow.com/a/3320743/3536236

我認為在遵循這兩個鏈接之后,您應該可以使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM