-1

私は php と mysql を初めて使用します。ファイルをアップロードするための php ページを作成しました。これらのファイルはローカル ドライブに保存されます。別のページでは、ユーザーがオプションを選択すると、オプションに関連するファイルが表形式で表示されます。ローカル drive.upto のファイルへのリンクであることが成功しました。問題は、ファイルのハイパーリンクをクリックしても何も表示されないことです.しかし、ファイルのアドレスリンクをコピーして新しいウィンドウに貼り付けると、ファイルが開きます.助けてください.問題で2週間立ち往生しています. 実験するために、ハイパーリンクが機能していることを確認するためだけに単純な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.

ファイルが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>
4

1 に答える 1

1

このスクリプトを、upload2.php と同じフォルダー内の download.php に配置し、次のように呼び出します。

http://localhost/phpsample/upload/download.php?file=FILE

FILEアップロードされたファイル名はどこにありますか。

<?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;
?>
于 2012-08-11T05:33:16.903 に答える