mheddaMedlem sedan feb. 2000385 inlägg
Hej på er!
Äntligen så kommer jag åt detta eminenta forum igen..
Ett litet problem har jag också. Det är nämligen så att jag har gjort en länk som skickar ett värde till en switchsatts som utför en funktion beroende på vad man hänger på för värde. Inget avancerat.
Men problemet är att det funkar hemma men inte på min dator på kursen. Jag har apache för windows Och php-4.1.1
på båda datorerna. På kursdatorn skickar den inte värdet..
Jag provade att sätta $action till forum på index sidan. Då funkade det så det verkar allså som att felet är att den inte skickar med värdet.
Länken ser ut så här.
<a href='$PHP_SELF?action=form'>Anslagstavlan</a>
Och den tas imot av switch sattsen
switch($action)
{
case form:
whiteboard_form();
break;
case add_whiteboard:
addToWhiteboard($contents);
break;
default:
//whiteboard_form();
break;
}
Men det är kanske ointressant att titta på koden eftersom den funkar, men inte på båda datorerna.
Hoppas det är någon som kanske haft samma problem som vet vad det är för fel..
ByBy mhedda
SPiNMedlem sedan mars 20005 832 inlägg
Sätt " runt dina värden som du vill jämföra mot, så att de behandlas som strängar. I de flesta språk kan man inte använda strängar i switch-case, men PHP verkar tillåta det. :)
Alltså:
switch($action) {
case "form":
whiteboard_form();
break;
...
mheddaMedlem sedan feb. 2000385 inlägg
Tack men tyvärr!!
Tack SPIN!
Men den verkar inte skicka det man hänger på strängen i detta fall forum.
Men som sagt det funkar hemma.
Så det verkar vara miljön som jag sitter i, men vad jag kan se så ser den likadann ut. Förutom att jag laddade ner apachen och konfigurerade om den för php. Så jag tänkte om det kan vara någe sånt.
Well I don't know..
ByBy Hedda
SPiNMedlem sedan mars 20005 832 inlägg
Det kanske beror på hur PHP är inställt? Du anropar $action, kanske det går bättre med de globala associativa arrayerna? ( $_GET[ 'action' ] )
Prova det! :)
mheddaMedlem sedan feb. 2000385 inlägg
Tackar så mycket!
:P
Tack så väldigt väldigt mycket SPIN..
Det där hade jag inte kommit på.
Nyfiken var någonstans i php är detta inställt.
ByByHedda
SPiNMedlem sedan mars 20005 832 inlägg
Det ställer man in i PHP.ini, under register_globals. Är den avstängd ( satt till false ) så kommer man bara åt utomstående variabler ( GET, POST, SESSION, COOKIE ) med de globala associativa arrayerna. Om de nu är tillgängliga... Det finns en möjlighet att välja track_vars också, till på eller av. Är den av kommer man inte åt GET, POST, osv, med de globala associativa arrayerna. Från och med PHP 4.0.3 är track_vars alltid på. :)
mheddaMedlem sedan feb. 2000385 inlägg
register_globals
Tack för mini kursen!
Då har man lärt sig något idag också :-)
ByByMats