Location: PHPKode > projects > ProNuke. Postnuke To Oracle > postnuke/html/modules/Downloads/dl-randomdownload.php
<?php
// File: $Id: dl-randomdownload.php,v 1.2 2001/12/08 12:17:01 jgm Exp $ $Name:  $
// ----------------------------------------------------------------------
// POST-NUKE Content Management System
// Copyright (C) 2001 by the Post-Nuke Development Team.
// http://www.postnuke.com/
// ----------------------------------------------------------------------
// Based on:
// PHP-NUKE Web Portal System - http://phpnuke.org/
// Thatware - http://thatware.org/
// ----------------------------------------------------------------------
// LICENSE
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License (GPL)
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// To read the license please visit http://www.gnu.org/copyleft/gpl.html
// ----------------------------------------------------------------------
// Original Author of file: Francisco Burzi
// Purpose of file:
// ----------------------------------------------------------------------

/**
 * RandomDownload
 */
function RandomDownload() {
    global $pntable, $dbconn;

    include("header.php");
    menu(1);

    $result = $dbconn->Execute("SELECT COUNT(*) FROM $pntable[downloads_downloads]");
    list($numrows) = $result->fields;
    if ($numrows < 1 ) { // if no data
        echo "<br>";
        OpenTable();
        echo "<font class=\"pn-normal\"><center><b>"._downloadNODATA."</b><br><br>\n";
    echo _GOBACK."</font>\n";
    CloseTable();
    include("footer.php");
    return;

    if ($numrows == 1) {
        $random = 1;
    } else {
        srand((double)microtime()*1000000);
        $random = rand(1,$numrows);
    }

    do {
        $column = &$pntable['downloads_downloads_column'];
        $result = $dbconn->Execute("SELECT $column[url] FROM $pntable[downloads_downloads] WHERE $column[lid]='$random'");
        list($url) = $result->fields;
        $itemname = downloads_ItemNameFromIID($random);
        $catname = downloads_CatNameFromIID($random);

    } while (!authorised(0, 'Downloads::Item', "$itemname:$catname$random"));

    $dbconn->Execute("UPDATE $pntable[downloads_downloads] SET $column[hits]=$column[hits]+1 WHERE $column[lid]=$random");
    Header('Location: '.$url);
}

?>
Return current item: ProNuke. Postnuke To Oracle