2012-11-06 59 views
2

我使用的是xampp 1.7.0,但只是决定升级到xampp 1.8.1。我卸载了1.7,但没有卸载htdocs和mysql服务器。
我现在安装了1.8,并通过xampp安全页面为xampp目录和mysql创建密码。 不幸的是,我不能再查看我的网站,他们都给出错误,这是一个错误示例:升级到Xampp 1.8.1后,无法查看我的网站

Strict Standards: Non-static method JLoader::import() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 29 
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 71 
Strict Standards: Non-static method JLoader::import() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 32 
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 71 
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 138 
Strict Standards: Non-static method JRequest::clean() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 33 
Strict Standards: Non-static method JRequest::_cleanArray() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\environment\request.php on line 463 

请我能做些什么,因为我没有所有的网站,5年内的备份现在正与当前的客户项目一起努力工作。

我使用win7操作系统64bit,使用xampp-win32-1.8.1-VC9-installer。

+0

应该移动到http://serverfault.com –

+1

如何将Joomla升级到最新版本? '以前做一个备份! (即使它现在不工作!)'最后的机会:降级回到1.7.0 – Nippey

+0

我的joomla是我升级我的xampp之前的最新版本。 – user1801410

回答

2

这可能是由于最新XAMPP中的PHP版本不同(更新版本)。对于错误代码的警告,PHP 5.4(确切地说是PHP 5.4.7)更为严格。

真正的问题是在实际的PHP代码中(无论是你的还是代码中使用的包,例如Joomla)。

如果它来自你的代码,你应该修复它。通过以静态方式访问静态方法属性或属性(例如,要访问它的class Foo { public static $bar = 123; }Foo::$bar,以及使用class Bar { public static function foo() { } }Bar::foo()来调用它,请注意我们如何使用::而不是->。这意味着没有活动实例化状态(In换句话说,$bar = new Bar(); $bar->foo();是不正确的,它调用它作为一个实例方法,而不是静态地通过Bar::foo())。

而同样,如果问题是周围的其他方法,开发人员可能需要声明一个方法static如果是无状态并静态调用。

对于Joomla案例,它似乎已有各种报告:

(仅通过粘贴在谷歌中发现错误!)

了解更多关于状态和静态之间的区别:

如果你只有警告(不是错误),看看“PHP的error_reporting”,以了解如何禁用这些无辜的警告(通过降低错误报告级别)。这样你可以减少噪音,并可以专注于重要的事情。

在开发过程中,您可能不应该隐藏任何警告,以便您能够发现它们并改进您的代码。但是在生产中,隐藏警告并仅记录错误可能会更好。

+1

对不起,如果这听起来很愚蠢,我对编程一无所知,只是一个网页设计师。我在哪里可以得到 - “php error_reporting” – user1801410

+0

首先确保您使用的是最新版本的软件(更新Joomla,其中的插件等,并首先进行备份!)。如果您仍然收到警告或Joomla的新版本出现问题,请考虑更改'php.ini'配置中的'error_reporting'设置。通过Google搜索了解如何。最好从好的文档中找出你自己,你将会学到一些东西!我已经给出了足够的观点,我认为。 – Krinkle

+0

我编辑了php.ini,我将错误报告设置为ALL,但仍显示错误。 – user1801410

0

经过所有提供的信息和链接后,我能够克服严格的标准问题。我之前做出的改变并没有反映出来,因为我改变了错误的价值观。 这就是我所做的: 我不得不编辑我的php.ini文件的第535行& 552,并将显示错误设置为OFF,并使用以下设置:error_reporting = E_ALL &〜E_NOTICE。 Joomla 1.5和2.5网站都不会再发生错误。 感谢大家。

+0

现在唯一的问题是,我无法通过mysql ibdata01文件恢复我的数据库,我没有在卸载xampp 1.8之前备份。希望您能逐步详细了解如何通过这些文件恢复数据库:ibdata01,ib_logfile1,ib_logfile0。这些是我在mysql数据文件夹中找到的唯一文件。 – user1801410