Есть код, но когда выполняю его то выходит вот такая ошибка..
Fatal error: Call to a member function fopen() on a non-object in (путь убран) on line 26
Вот сам код
<?php
$namefiles = "namefiles.dat";
$templinks = "templinks.dat";
// сколько хранить ссылки (в секундах - 10 минут)
$hardtime = 60;
// текущее время в сек
$currtime = time();
// проверка и очистка временных строк
$arruniqid = file($templinks);
$newarruniqid = array();
for ($i = 0; $i < count($arruniqid); $i++) {
// строки таблицы временных уник. id
list($file_id, $uniq_id, $puttime) = explode("|", $arruniqid[$i]);
$difftime = $currtime - intval($puttime);
// если время текущей строки в пределе
if ($difftime < $hardtime)
array_push($newarruniqid, "$file_id|$uniq_id|$puttime");
}
// составить матрицу таблицы временных id
$newtbdwn = implode("", $newarruniqid);
$fp = $wf->fopen($templinks, "w");
@fwrite($fp, $newtbdwn);
fclose($fp, $templinks);
if ($_GET['getlink']) {
// матрица названий файлов
$arrtbfl = file($namefiles);
foreach ($arrtbfl as $key => $val) {
list($id, $descr, $filename) = explode("|", $val);
if ($id == $_GET['getlink']) {
list($id, $descr, $filename) = explode("|", $val);
$nowid = $id;
break;
}
}
// генерировать уник. id
$arrtbunq = file($templinks);
$uniq_id = md5(uniqid(rand(), 1));
array_push($arrtbunq, "$nowid|$uniq_id|$currtime\n");
// новая строка уник. id
$newtbunq = implode("", $arrtbunq);
// записать файл базы обратно
$fp = fopen($templinks, "w");
@fwrite($fp, $newtbunq);
fclose($fp, $templinks);
// Ссылка для скачивания
$shlink = "href=http://.../templinks.php?download=$uniq_id";
}
if ($_GET['download']) {
$dwn = file($templinks);
foreach ($dwn as $key => $val) {
list($file_id, $uniq_id, $puttime) = explode("|", $val);
if (strstr($uniq_id == $_GET['download'])) {
$id = $file_id;
break;
}
}
}
?>