[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подскажите пожалуйста в чём проблема
DJ_Orloff
Вылезает ошибка
Fatal error: Call to undefined method portfolio::title() in Z:\home\stud\www\index.php on line 73
Файл index.php
Думаю что ошибка в файде index, т.к. при захорде по другой ссылке выдает ошибку:
Fatal error: Call to undefined method news::title() in Z:\home\stud\www\index.php on line 73


<?php

include "setting.php";
include "library/main.php";
include "global.php";

$BeginTime = GetMicroTime();
$oput="";


if(!isset($_GET['page'])){
$_GET['page']='index';
}
$fun = array();
$rdbPage = mysql_query("SELECT * FROM `page` WHERE `Code`='$_GET[page]'");
//echo mysql_error();
if(mysql_num_rows($rdbPage)!=0){
$dbPage = mysql_fetch_array($rdbPage);
$oput = GeneratePage($dbPage['IDTemplate'],$dbPage['ID']);
}else{
if($_GET['page']!='index'){
header("location: index.php");
}else{
echo " сайт в разработке";
}
}

echo $oput;
echo "<!--".(GetMicroTime()-$BeginTime)."-->";

function GeneratePage($ID,$IDPage,$parent=0){
global $fun;
// global $script_marker;
// global $dir;

$rdbTemplate = mysql_query("SELECT * FROM `template` WHERE `ID` = '".$ID."'");
$dbTemplate = mysql_fetch_array($rdbTemplate);
$output = LoadTemplate("template/".$dbTemplate['Code'].".html");
$rdbData = mysql_query("SELECT * FROM `data` WHERE `IDTemplate` = '".$ID."'");
while($dbData = mysql_fetch_array($rdbData)){
// $rdbType = my_query("SELECT count(*) FROM `type` WHERE `IDPage` = '".$IDPage."' AND `IDData` = '".$dbData['ID']."' AND `IDType`='".$parent."'");
// $dbType = mysql_fetch_array($rdbType);

$rdbMarker = mysql_query("SELECT * FROM `marker` WHERE `IDPage` = '".$IDPage."' AND `IDData` = '".$dbData['ID']."' AND `IDType`='".$parent."'");
if(mysql_num_rows($rdbMarker)==0){
$marker=0;
}else{
$dbMarker = mysql_fetch_array($rdbMarker);
$rdbFunction = mysql_query("SELECT * FROM `function` WHERE `ID` = '".$dbMarker['IDFunction']."'");
$dbFunction = mysql_fetch_array($rdbFunction);

$rdbModule = mysql_query("SELECT * FROM `module` WHERE `ID` = '".$dbFunction['IDModule']."'");
$dbModule = mysql_fetch_array($rdbModule);
if($dbModule['File']!=''){
if(!isset($fun[($dbModule['Code'])])){
include_once("module/".$dbModule['File']);
$fun[($dbModule['Code'])] = new $dbModule['Code']();
}
$marker = $fun[($dbModule['Code'])]->$dbFunction["Code"]();
}
}

$rdbType = mysql_query("SELECT * FROM `type` WHERE `IDPage` = '".$IDPage."' AND `IDData` = '".$dbData['ID']."' AND `Marker` = '".$marker."' AND `IDType`='".$parent."'");
$dbType = mysql_fetch_array($rdbType);
$chem = "";
switch($dbType['Type']){
case 'function':
$rdbFunction = mysql_query("SELECT * FROM `function` WHERE `ID` = '".$dbType['Val']."'");
if(mysql_num_rows($rdbFunction)!=0){
$dbFunction = mysql_fetch_array($rdbFunction);
$rdbModule = mysql_query("SELECT * FROM `module` WHERE `ID` = '".$dbFunction['IDModule']."'");
$dbModule = mysql_fetch_array($rdbModule);
if(!isset($fun[($dbModule['Code'])])){
include_once("module/".$dbModule['File']);
$fun[($dbModule['Code'])] = new $dbModule['Code']();
}
$text = $fun[($dbModule['Code'])]->$dbFunction["Code"]();
$chem = $text;
}
break;
case 'template':
$chem = GeneratePage($dbType['Val'],$IDPage,$dbType['ID']);
break;
case 'static':
$rdbStatic = mysql_query("SELECT `Text` FROM `static` WHERE `ID` = '".$dbType['Val']."'");
$dbStatic = mysql_fetch_array($rdbStatic);
$chem = $dbStatic[0];
break;
default:
$chem = $dbType['Val'];
break;
}
$output = str_replace(array($dbData['Code']),array($chem),$output);

}
return $output;
}
?>


И сам файл portfolio.php


<?php
class
portfolio{

function portfolio(){
// страницы
if(!isset($_GET['l']))
$_GET['l'] = 1;
else
if
($_GET['l']!="all")
$_GET['l'] = $_GET['l']*1;
if(($_GET['l'] == 0 || $_GET['l']<0) && $_GET['l']!="all")
$_GET['l'] = 1;
}

function slide(){
$temp = LoadTemplate("template/top_slide.html");
$img = "";
$r = mysql_query("SELECT c.`Image` FROM `_portfolio` as `c`, `document` as `d` WHERE `c`.`IDDoc` = `d`.`ID` AND d.`Public` = '1'");
while($c = mysql_fetch_array($r)){
if(strlen($img)!=0)
$img .= ", ";
$img .= "['".ImageFromID($c[0])."']";
}

$temp = str_replace(array("<%PICS%>"),array($img),$temp);
return $temp;
}

function spisok(){
$temp = LoadTemplate("template/spisok.html");
$in_page = 3;
$r = mysql_query("SELECT count(c.`IDDoc`) FROM `_portfolio` as `c`, `document` as `d` WHERE `c`.`IDDoc` = `d`.`ID` AND d.`Public` = '1'");
$count_page = mysql_fetch_array($r);
$col = $count_page[0];
$count_page = ceil($count_page[0]/$in_page);
$pa = "";
$im = "";

if($_GET['l'] > $count_page)
$_GET['l'] = $count_page;

if($_GET['l'] != 1)
$pa = "<a href=\"index.php?page=portfolio&l=1\">начало</a>";
else
$pa = "           ";

if($_GET['l']<=9)
$start = 1;
else
$start = $_GET['l']-9;
for($i=$start; $i<=$count_page && $i<($start+19); $i++)
if($i == $_GET['l'])
$pa .= ' <div id="pages_select">'.$i.'</div>';
else
$pa .= ' <a href="index.php?page=portfolio&l='.$i.'">'.$i.'</a>';
if($_GET['l'] != $count_page)
$pa .= " <a href=\"index.php?page=portfolio&l=".($_GET['l']+1)."\">далее</a>";
else
$pa .= "           ";

$r = mysql_query("SELECT c.`IDDoc`, c.`Name`, c.`Text` FROM `_portfolio` as `c`, `document` as `d` WHERE `c`.`IDDoc` = `d`.`ID` AND d.`Public` = '1' ORDER BY d.`Sort` DESC LIMIT ".($_GET['l']-1)*$in_page.", ".$in_page);
$li = "<div align=\"left\">";
$i = ($_GET['l']-1)*$in_page+1;
while($c = mysql_fetch_array($r)){
if(strlen($c[2])>1)
$c[2] .= "- ".$c[2];
$li .= "<a href=\"index.php?page=show&l=".$i."\" id=\"port\">".$c[1]."</a> ".$c[2]."<br>";
$i++;
}
$li .= "</div>";
$temp = str_replace(array("<%LIST%>", "<%PAGES%>"), array($li, $pa), $temp);

return $temp;
}

function show(){
$temp = LoadTemplate("template/one_work.html");

$r = mysql_query("SELECT count(c.`IDDoc`) FROM `_portfolio` as `c`, `document` as `d` WHERE `c`.`IDDoc` = `d`.`ID` AND d.`Public` = '1'");
$count_page = mysql_fetch_array($r);
$count_page = $count_page[0];
$pa = "";
$im = "";

if($_GET['l'] > $count_page)
$_GET['l'] = $count_page;

if($_GET['l'] != 1)
$pa = "<a href=\"index.php?page=show&l=1\">начало</a>";
else
$pa = "           ";

if($_GET['l']<=9)
$start = 1;
else
$start = $_GET['l']-9;
for($i=$start; $i<=$count_page && $i<($start+19); $i++)
if($i == $_GET['l'])
$pa .= ' <div id="pages_select">'.$i.'</div>';
else
$pa .= ' <a href="index.php?page=show&l='.$i.'">'.$i.'</a>';
if($_GET['l'] != $count_page)
$pa .= " <a href=\"index.php?page=show&l=".($_GET['l']+1)."\">далее</a>";
else
$pa .= "           ";

$r = mysql_query("SELECT c.`IDDoc`, c.`Name`, c.`Text`, c.`Image`, c.`Year`, c.`Info` FROM `_portfolio` as `c`, `document` as `d` WHERE `c`.`IDDoc` = `d`.`ID` AND d.`Public` = '1' ORDER BY d.`Sort` DESC LIMIT ".($_GET['l']-1).", 21");
$c = mysql_fetch_array($r);
$temp = str_replace(array("<%TITLE%>", "<%PAGES%>", "<%IMAGE%>", "<%YEAR%>", "<%INFO%>"), array($c[1], $pa, ImageFromID($c[3]), $c[4], $c[5]), $temp);

return $temp;

}
}

?>


Не могу разобраться в чём проблема.
Подскажите пожалуйста.



Спустя 4 минуты, 24 секунды (9.03.2012 - 12:03) T1grOK написал(а):
Тебе же пишут что в классе портфолио не найден метод title(), то же самое и в классе news. То есть вызывается несуществующий метод.

Спустя 45 секунд (9.03.2012 - 12:04) DJ_Orloff написал(а):
Ну а что надо сделать то

Спустя 5 минут, 53 секунды (9.03.2012 - 12:09) Invis1ble написал(а):
Определить метод title, Ваш Кэп

Спустя 2 минуты, 28 секунд (9.03.2012 - 12:12) DJ_Orloff написал(а):
Цитата (Invis1ble @ 9.03.2012 - 09:09)
Определить метод title, Ваш Кэп

Можете объяснить поподробнее, я в этом деле новичок.
Спасибо за внимание

Спустя 2 минуты, 20 секунд (9.03.2012 - 12:14) Invis1ble написал(а):
тут нечего поподробней объяснять

Спустя 2 минуты, 16 секунд (9.03.2012 - 12:17) DJ_Orloff написал(а):
Может кто нибудь ещё поможет

Спустя 11 минут, 6 секунд (9.03.2012 - 12:28) DJ_Orloff написал(а):
Всё разобрался
Прописал просто в файле portfolio.php строчку
function title(){
}

Спустя 1 минута, 14 секунд (9.03.2012 - 12:29) Invis1ble написал(а):
отныне ты мой кумир biggrin.gif

Спустя 1 час, 34 минуты, 49 секунд (9.03.2012 - 14:04) DJ_Orloff написал(а):
biggrin.gif

Спустя 3 минуты, 54 секунды (9.03.2012 - 14:08) m4a1fox написал(а):
Invis1ble
Цитата
отныне ты мой кумир

Ты сегодня в ударе. Смешные фразочки так и сыпятся.... smile.gif

Спустя 3 минуты, 42 секунды (9.03.2012 - 14:11) Invis1ble написал(а):
Просто увидел гениальное решение проблемы smile.gif

DJ_Orloff
если ты думаешь, что это нормальное решение - то я тебя расстрою. Это примерно как вместо отрубленной руки прикрепить табличку "Тут рука"
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.