Hej. Jeg har en side liggende på et webhotel, og denne side er skrevet i php 4. Nu har webhotellet i mellemtiden opgraderet deres php version til 5, og det gør, at min side ikke kan køre ordentligt. Hvor stor forskel er der egentlig på de to versioner, og hvor meget vil der skulle ændres i programmeringen af siden? Er lidt på bar bund med php programmering. Kan ændre småting, men er ikke den store programmør.
Det er en komplet cms hjemmeside løsning, så det er godt nok meget kode der skal lægges ud så... Kan opgraderingen fra ver 4 - ver 5 give så store problemer for en side, der er skrevet til php 4?
Jeg har oplevet det samme på en side jeg skulle hjælpe med, ham der havde siden, havde valgt at bruge Cmsimple, og efter skift til php5 virkede menuen ikke. Menuen var styret af noget Javascript, men ved henvendelse til webhotellet, fik vi bare besked på, at så var siden nok ikke kompetibel med php5, det diskuterede vi lidt over, uden at komme nogen vegne. Min ven var efter en måned ved at være moden, til at overveje en helt ny side, men så pludselig en dag, uden varsel, virkede det hele igen. OG HOTELLET KØRER STADIG PHP5. Jeg har ikke ændret noget, webhotellet siger de heller ikke har, men jeg tror nu mest på mig selv :-)
Den kommer med følgende fejl. Fatal error: Cannot redeclare class _php_incomplete_class in /usr/home/dan11356/kontent/cms2/extend.inc.php(28) : eval()'d code on line 2
Og det henviser til følgende
if (!empty($temp)) { eval($temp); }
Har siddet og rodet rundt med det, på en mamb server hjemme, og når jeg slår zend optimzer fra, så virker skidtet godt nok, og der kan den så også køre php 5. Webhotellet siger, at der altid har været zend optimizer på. Jeg kan bare ikke forstå, hvorfor det lige pludselig ikke virker mere.
/* Class names with leading "_" are abstract and should not be instantiated directly. They can be overridden by extending them by specific site code, but often the default will be used. Hence, here we make concrete classes directly from the abstract ones - IF not already made - so these can be used by site code...
*/
$temp = "";
foreach (get_declared_classes() as $abs_class) {
if (preg_match("/^_(\w+)$/", $abs_class, $matches)) { $con_class = $matches[1];
DEBUG! Temp : class _PHP_Incomplete_Class extends __PHP_Incomplete_Class { } class _PHP_Incomplete_Class extends __PHP_Incomplete_Class { } class db extends _db { } class input extends _input { } class imgfile extends _imgfile { } class webeditor extends _webeditor { } class menu extends _menu { } class pages extends _pages { } class cache extends _cache { } class security extends _security { } class settings extends _settings { } class system extends _system { } class urlmanager extends _urlmanager { } class language extends _language { } class admin_translations extends _admin_translations { } class flash extends _flash { } class errorhandler extends _errorhandler { }
Fatal error: Cannot redeclare class _php_incomplete_class in /usr/home/dan11356/kontent/cms2/extend.inc.php(28) : eval()'d code on line 2
Det der undrer mig rigtig meget er, at siden har kørt, og min udbyder påstår, at der ikke er blevet ændret noget som helst. Forstår det virkelig ikke.
:-) Nej. Og det gjorde jeg absolut heller ikke. Tager problemet op med min udbyder igen i morgen, og så må de altså finde en løsning på det problem. Siden er kodet proffesionelt, og den har virket. Der er intet blevet ændret i kodningen, og ingen filer er fjernet, så det kan komme fra deres side af. Håber det giver en løsning på problemet.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.