upload&download script
Ik ben bezig met een profielensite en het is de bedoeling dat gebruikers pdf en word documenten kunnen oploaden naar hun profiel.
Weet iemand van jullie misschien een goede script die ik kan gebruiken.
Heb al lange tijd gegoogled en hier gekeken maar ik heb niet echt iets gevonden.
alvast bedankt!
Als ik Google op upload script kom ik genoeg spannends tegen....
George mendel op 16/01/2012 00:16:17:
Dag allemaal
Ik ben bezig met een profielensite en het is de bedoeling dat gebruikers pdf en word documenten kunnen oploaden naar hun profiel.
Weet iemand van jullie misschien een goede script die ik kan gebruiken.
Heb al lange tijd gegoogled en hier gekeken maar ik heb niet echt iets gevonden.
alvast bedankt!
Ik ben bezig met een profielensite en het is de bedoeling dat gebruikers pdf en word documenten kunnen oploaden naar hun profiel.
Weet iemand van jullie misschien een goede script die ik kan gebruiken.
Heb al lange tijd gegoogled en hier gekeken maar ik heb niet echt iets gevonden.
alvast bedankt!
Neem het upload script van http://www.verot.net hier staat een hoop moois tussen. En ook met plaatjes enzo. Upload werkt echt perfect.
de script code voor het formulier is:
<form method="post" action="FileUpload_Process.php" enctype="multipart/form-data">Description:<br>
File Description: <input type="text" name="form_description" size="40">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
<br>File to upload:<br>
<input type="file" name="form_data" size="40">
<p><input type="submit" name="submit" value="submit">
</form>
het script voor het proces is:
]
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?PHP
include_once "connect.php";
$FileName = $_FILES[form_data]['name'];
$tmpName = $_FILES[form_data]['tmp_name'];
$FileSize = $_FILES[form_data]['size'];
$FileType = $_FILES[form_data]['type'];
if (isset($_FILES[form_data]) && $_FILES[form_data] != "none")
{
$content = addslashes(file_get_contents($tmpName));
$result=MYSQL_QUERY("INSERT INTO Files (Description, FileData,FileName,FileSize,FileType)
VALUES ('{$_POST[form_description]}','$content','$FileName','$FileSize','$FileType')");
if(!$result)echo"ERROR: ".sql_error()."<BR>";
$id= mysql_insert_id();
print "<p>File ID: <b>$id</b><br>";
print "<p>File Name: <b>".$_FILES[form_data]['name']."</b><br>";
print "<p>File Name: <b>".$_FILES[form_data]['tmp_name']."</b><br>";
print "<p>File Size: <b>".$_FILES[form_data]['size']."</b><br>";
print "<p>File Type: <b>".$_FILES[form_data]['type']."</b><p>";
}
html_footer();
?>
include_once "connect.php";
$FileName = $_FILES[form_data]['name'];
$tmpName = $_FILES[form_data]['tmp_name'];
$FileSize = $_FILES[form_data]['size'];
$FileType = $_FILES[form_data]['type'];
if (isset($_FILES[form_data]) && $_FILES[form_data] != "none")
{
$content = addslashes(file_get_contents($tmpName));
$result=MYSQL_QUERY("INSERT INTO Files (Description, FileData,FileName,FileSize,FileType)
VALUES ('{$_POST[form_description]}','$content','$FileName','$FileSize','$FileType')");
if(!$result)echo"ERROR: ".sql_error()."<BR>";
$id= mysql_insert_id();
print "<p>File ID: <b>$id</b><br>";
print "<p>File Name: <b>".$_FILES[form_data]['name']."</b><br>";
print "<p>File Name: <b>".$_FILES[form_data]['tmp_name']."</b><br>";
print "<p>File Size: <b>".$_FILES[form_data]['size']."</b><br>";
print "<p>File Type: <b>".$_FILES[form_data]['type']."</b><p>";
}
html_footer();
?>
het script voor het lijstweergave is:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?PHP
$query = "SELECT id, FileName FROM Files";
$result = mysql_query($query) or die('Error, query failed');
if(mysql_num_rows($result) == 0)
{
echo "Database is empty <br>";
}
else
{
while(list($id, $name) = mysql_fetch_array($result))
{
?>
$query = "SELECT id, FileName FROM Files";
$result = mysql_query($query) or die('Error, query failed');
if(mysql_num_rows($result) == 0)
{
echo "Database is empty <br>";
}
else
{
while(list($id, $name) = mysql_fetch_array($result))
{
?>
<a href="DownloadSave.php?id="></a> <br>
Ook kan het zijn dat je een header() met het mime-type moet plaatsen.
wat houd deze header() in?
George mendel op 18/01/2012 21:41:05:
waarom zou het aan windows liggen?
Misschien kent deze geen PDF-reader, zoals Adobe Reader?
Quote:
wat houd deze header() in?
Die geeft aan wat voor bestand het is, en waarmee Windows (of welk ander OS dan ook) deze moet openen.
nee hij opent geen een bestandtype als ik op het link druk via list.php
Gewijzigd op 18/01/2012 21:57:36 door - Ariën -
Kun je niet beter/makkelijker de documenten op de server opslaan?
Gewijzigd op 19/01/2012 12:50:05 door Chris -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
// Haal de bestandsnaam op dmv van de Hash die word meegegeven
$qFile = 'SELECT *, COUNT(fileID) FROM bestanden WHERE fileLink = "'.$_GET['hash'].'" LIMIT 1';
$mysqlFile = mysql_query($qFile);
$fFile = mysql_fetch_assoc($mysqlFile);
//Check for download request:
if($fFile['COUNT(fileID)'] >= 1){
//Below required for IE:
if(ini_get('zlib.output_compression')) {
ini_set('zlib.output_compression', 'Off');
}
// Set file
$sFile = substr($fFile['filePath'].$fFile['fileName'], 1, 99999999);
// Set headers
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($sFile));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($sFile));
ob_clean();
flush();
readfile($sFile);
exit();
} else {
header("Location: /index/");
}
?>
// Haal de bestandsnaam op dmv van de Hash die word meegegeven
$qFile = 'SELECT *, COUNT(fileID) FROM bestanden WHERE fileLink = "'.$_GET['hash'].'" LIMIT 1';
$mysqlFile = mysql_query($qFile);
$fFile = mysql_fetch_assoc($mysqlFile);
//Check for download request:
if($fFile['COUNT(fileID)'] >= 1){
//Below required for IE:
if(ini_get('zlib.output_compression')) {
ini_set('zlib.output_compression', 'Off');
}
// Set file
$sFile = substr($fFile['filePath'].$fFile['fileName'], 1, 99999999);
// Set headers
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($sFile));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($sFile));
ob_clean();
flush();
readfile($sFile);
exit();
} else {
header("Location: /index/");
}
?>
waar kan ik die scripts in plakken
Rick's downloadscript is een los script die de download ophaalt, en geforceerd naar de gebruiker toe stuurt.
meschien toch eens even je adobe bekijken en eventueel eens update?