Login   Register  
PHP Classes
elePHPant
Icontem

File: testFileDB2.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of L  >  FileDB  >  testFileDB2.php  >  Download  
File: testFileDB2.php
Role: Example script
Content type: text/plain
Description: example using Uploader.php
Class: FileDB
Stores (binary) files in a database
Author: By
Last change: changed to make it compliant to anyDB the db abstraction layer(http://www.phpclasses.org/anydb)
Date: 11 years ago
Size: 3,313 bytes
 

Contents

Class file image Download
<?php
////////////////////////////////////////////////////////////////////////
/*
    test page for FileDB.php

    Shows how the upload and the db class can easily be used together.
*/
////////////////////////////////////////////////////////////////////////

require "../anyDB/anyDB.php";
// http://www.phpclasses.org/browse.html/package/846.html
require "../uploader/Uploader.php"
// http://www.phpclasses.org/browse.html/package/949.html
require 'FileDB.php';

////////////////////////////////////////////////////////////////////////

$host       'localhost';
$database   'ebm';
$user       '';
$password   '';
$db         anyDB::getLayer('MYSQL''''');

$filedb     = new FileDB($db$host$database$user$password);
$up         = new Uploader();

////////////////////////////////////////////////////////////////////////
// upload button clicked

if ($up->wasSubmitted()) {
    
$overwrite true;
    
$allowedTypes = array("image/bmp","image/gif","image/pjpeg","image/jpeg","image/x-png");
    
$array $up->uploadTo('./'$overwrite$allowedTypes);
    if (
is_array($array)) {
        foreach(
$array as $file) {
             if (
$filedb->add($file['full_path'])) {
                 echo 
$file['name'] . " was uploaded!<br>";
                 
unlink($file['full_path']);
             }
        }
    }
    echo 
$up->error;
    echo 
"<p><a href=\"" basename(__FILE__) . "\">back</a>\n";

////////////////////////////////////////////////////////////////////////
// clicked on a link
} else if (@$HTTP_GET_VARS['id']) {
        
$filedb->sendFile($HTTP_GET_VARS['id']);

////////////////////////////////////////////////////////////////////////
// display form
} else {
?>
<html>
<body>

<?php
    
echo $up->openForm(basename(__FILE__));
    echo 
$up->fileField();
    echo 
$up->closeForm();
    
// display table
    
$res $filedb->getWhere("id, file_name, file_size, descr, hits, last_visited, last_edited, added"'id'false);
    if (
is_array($res)) {

// display header
?>

<table border=1>
    <tr>
        <th>id</th>
        <th>filename</th>
        <th>size</th>
        <th>descr</th>
        <th>hits</th>
        <th>added</th>
        <th>last visited</th>
        <th>last edited</th>
        <th>show</th>
        <th>download</th>
    </tr>
<?php
        
// display file data
        
foreach($res as $data) {
?>
    <tr>
            <td><?= $data['id'?></td>
            <td><?= $data['file_name'?></td>
            <td><?= $data['file_size'?></td>
            <td><?= ($data['descr'] ? $data['descr'] : '&nbsp;'?></td>
            <td><?= $data['hits'?></td>
            <td><?= date("H:m:s \a\m d.m.y"strtotime($data['added'])) ?></td>
            <td><?= date("H:m:s \a\m d.m.y"strtotime($data['last_visited'])) ?></td>
            <td><?= date("H:m:s \a\m d.m.y"strtotime($data['last_edited'])) ?></td>
            <td><a href="showFile.php?id=<?=  $data['id'?>">show</a></td>
            <td><a href="<?= basename(__FILE__?>?id=<?=  $data['id'?>">download</a></td>
    </tr>
<?php
        
}
?>
</table>
<?php
    
}
    echo 
$filedb->_db->error;
}
////////////////////////////////////////////////////////////////////////
?>
</body>
</html>