webForumDet fria alternativet

PHP Till Apache 2

11 svar · 361 visningar · startad av Coper

CoperMedlem sedan mars 2002349 inlägg
#1

...

GunnarDMedlem sedan juni 20014 250 inlägg
#2

Se till att du senaste versionen av både Apache (2.0.39) och PHP (4.2.2).

Apache har ändrat så mycket i version 2 så att PHP haft svårt att hänga med, men jag har fått PHP 4.2.1 att fungera ihop med 2.0.36.

Men kör inte 4.21 resp. 2.0.36, det finns säkerhetsbuggar i dessa och äldre versioner.

CoperMedlem sedan mars 2002349 inlägg
#3

...

CoperMedlem sedan mars 2002349 inlägg
#4

...

CoperMedlem sedan mars 2002349 inlägg
#5

...

MatteMedlem sedan aug. 20002 970 inlägg
#6

Det gick tyvärr inte att komma åt sidan, men vi kan väl göra några gissningar.
Du har nu i din php.ini inställt att alla notiser/varningar ska visas. Byt därför ut

if ($id) {

mot

if (isset($id)) {

eller om du har register_globals=Off mot aktuell väg för att få ditt id:

if (isset($_POST['id'])) { // från formulär
if (isset($_GET['id'])) { // från url
if (isset($_SESSION['id'])) { //från session
cefalkMedlem sedan juni 2000283 inlägg
#7

Ni hade gärna fått skriva vad man ska lägga till i httpd.conf filen för att få php att fungera.

MatteMedlem sedan aug. 20002 970 inlägg
#8

Som jag förstår det så fungerar din PHP och du ska därför inte göra några ändringar i httpd.conf.

Det som troligtvis är skillnad på den här och tidigare version, är inställningarna i php.ini.
Du har troligtvis register_globals=Off och din error_reporting är eventuellt satt till E_ALL.

register_globals=Off innebär att du från t.ex formulär inte kan skriva variabelnamnet direkt typ $variabel, utan måste använda $_POST['variabel']. Du kommer inte heller åt $PHP_SELF utan måste skriva $_SERVER['PHP_SELF']. Detta är en säkerhetsinställning.
Du kan ändra till register_globals=On, men bör ändå skriva din kod som om det var Off.

Det finns en del sätt att koda som är tillåtna i PHP, men som inte rekommenderas, utan resulterar i en notis eller varning. En av dessa är att använda en odefinierad/oinitierad variabel. Åtgärden mot detta är att antingen sätta variabeln först med t.ex $variabel=""; eller att kolla om en variabel är satt innan man använder den if(isset($variabel)).
Det står dig naturligtvis fritt att koppla bort dessa varningar.

cefalkMedlem sedan juni 2000283 inlägg
#9

Jag får inte php att "parsa" överhuvudtaget utan när mitt php script körs blir det bara en blank sida och om man tittar på "visa källa" då finns min php kod i dokumentet.

Jag vet att på apache 1.3 skulle man lägga till några rader AddModule och LoadModule, men i apache 2.0.40 finns det ju inget som heter AddModule.

Hoppas att någon förstår vad jag menar.

MatteMedlem sedan aug. 20002 970 inlägg
#10

Ursäkta cefalk. Jag läste ditt inlägg som om det var skrivet av Coper.
Har inte testat Apache 2, och kan därför inte hjälpa dig.

maydayMedlem sedan aug. 20003 212 inlägg
#11

asså testa me o ange rätt passwd till din databas till o börja me så ska du se de artar sig

cefalkMedlem sedan juni 2000283 inlägg
#12

Mitt problem är nu löst så till er alla som kanske sitter med samma problem någon gång.......

Enda som behövdes var att ändra
short_open_tag = On

Som standard stod det Off istället för On

Genererad på 388 ms · cache AV · v20260730165559-full.f96bc7eb