Avatar billede bb_maze Nybegynder
27. maj 2004 - 00:24 Der er 13 kommentarer og
2 løsninger

PHP opfører sig underligt efter server flyt

Hejsa

Jeg har flyttet min side til en ny host, men meget af det som har noget med php at gøre opfører sig underligt..

Kan det skyldes at der er forskellige version af php ved de forskellige hosts? Ved den gamle var det version PHP Version 4.3.6 og den nye er det PHP Version 4.3.1.

Hvis det er det der er fejlen hvad kan jeg så gøre?

Håber virkelig der er en der kan hjælpe, da det går mig lidt på:/

Hygge

P.S. Er ikke hardcore til php...
Avatar billede technodance.dk Nybegynder
27. maj 2004 - 00:25 #1
havd for en fejl for du
Avatar billede fangel Nybegynder
27. maj 2004 - 00:29 #2
mit gæt: (uden at vide fejlen)

de to hosts har forskellige opsætninger af (mindst) en af disse to parametre

error_reporting (hvis du nu modtager en masse notice's som du ikke fik før)

register_globals (hvis alt der omhandler form's etc ikke virker længere)

så skriv lige hvad din fejl er...

Morten
Avatar billede Slettet bruger
27. maj 2004 - 00:30 #3
Du kan prøve at sammenligne output fra dette lille script på de to servere:

<?php
php_info();
?>

Det har måske noget med register_globals at gøre.
Avatar billede bb_maze Nybegynder
27. maj 2004 - 00:32 #4
Altså jeg får ingen fejlmeddelelser.. Men!

Jeg bruger en include på forsiden og det spiller bare, men jeg har et nyhedssystem (bygget på .txt filer), et artikelsystem(kører via mySQL) og en afstemningsbox.

Hvis man klikker på et link til en nyhed bliver man vidst hen hvor man plejer, men der står intet på siden.

Hvis man klikker på et link til en artikel bliver man bare sendt hen til oversigt af alle artikler, og ikke selv artiklen. Og hvis man klikker på det igen, ja så bliver man stadig på oversigten.

Afstemningen, hvor man skal vælge en radiobutton og trykke submit, sender ikke resultater, men sender bare en til forsiden igen.

Hygge
Avatar billede bb_maze Nybegynder
27. maj 2004 - 00:34 #5
Har kigget lidt på den sandbox. Men hvad skal jeg kigge efter?

Den der hedder Thread Safety er    disabled ved den gamle, og enabled ved den nye.

Hygge
Avatar billede Slettet bruger
27. maj 2004 - 00:35 #6
Jeg tror stadig mest på register_globals, som fangel også nævnte. Den var nok slået til på den gamle server og fra på den nye.
Avatar billede bb_maze Nybegynder
27. maj 2004 - 00:36 #7
Præcis sandbox! Hvad gør jeg så?

Hygge
Avatar billede Slettet bruger
27. maj 2004 - 00:39 #8
Der er temmelig gode sikkerhedsmæssige grunde til at den er slået fra hos din nye host, så du skal ikke regne med at kunne få ændret indstillingen.

Jeg er bange for, at der ikke er meget andet at gøre end at få koden skrevet om, så den virker med register_globals slået fra.
Avatar billede Slettet bruger
27. maj 2004 - 00:43 #9
Den gode nyhed er så, at når koden er lavet om, vil det ikke forhindre dig i eventuelt at skifte tilbage igen, da kode skrevet til register_globals=off også virker, hvis den er slået til. Det er kun denne vej, det ikke virker.
Avatar billede bb_maze Nybegynder
27. maj 2004 - 00:46 #10
Ja, her kommer problemet så... Jeg kan ikke finde ud af at skrive det om...:/ Er der nogle grundregler, eller hvordan gør man? Har ikke så meget erfaring inden for php, og de scripts jeg bruger er nogle jeg har fundet på det store internet, og så ændret lidt i dem (men ikke meget)...

Tak for hjælpen indtil videre...

Hygge
Avatar billede Slettet bruger
27. maj 2004 - 00:55 #11
Ja, der er lidt grundregler.

Alle steder, hvor du skal modtage en værdi fra en URL som f.eks index.php?navn=værdi skal du i scriptet bruge $_GET['navn'] i stedet for $navn

Alle steder, hvor du skal modtage en værdi fra en <form method="post"><input name="navn"> skal du bruge $_POST['navn'] i stedet for $navn

Hvis du gemmer noget i en cookie, kan du bruge $_COOKIE['navn'] når du vil bruge værdien.

Hvis en værdi skal kunne sendes til scriptet på flere måder, kan du i stedet for ovenstående metoder læse den fra $_REQUEST['navn'] som indeholder en kombination af alle de tre forrige.

Hvis du bruger session-variable, skal du ikke bruge session_register(), men i stedet bare gemme værdien i $_SESSION['navn'] og du kan derefter hente den derfra også.
Avatar billede bb_maze Nybegynder
25. juni 2004 - 00:15 #12
fangel og sandbox, smider i lige et svar? Tak. Sandbox du får flest point, da du har hjulpet mest.

Hygge
Avatar billede Slettet bruger
25. juni 2004 - 00:49 #13
Her kommer et fra mig.
Avatar billede fangel Nybegynder
25. juni 2004 - 08:44 #14
svaa'r
Avatar billede bb_maze Nybegynder
25. juni 2004 - 14:30 #15
Takker :D
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester