Deze onderstaande SWITCH functie werkt niet.
En het is me een totaal chinees raadsel, waarom het niet werkt.
Want ik krijg geen foutmeldingen op de code, zowel niet met FireBug als met de foutenconsole van FF.
Output = HttpObject.responseText;
Result = Output.split('::');
alert(Output);
alert(Result[0]);
switch ( Result[0] )
{
case 100:
Message('Fout', 'U heeft geen gebruikersnaam ingevuld.', 4, true);
break;
case 101:
Message('Fout', 'U heeft geen wachtwoord ingevuld.', 4, true);
break;
case 200:
Message('Fout', 'Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!', 4, true);
break;
case 300:
Message('Welkom' + Result[1], 'U bent succesvol ingelogd en wordt nu doorgestuurd...', 3, false);
setTimeout("Redirect('index.php')",2800);
break;
}
Message('Fout','U heeft geen gebruikersnaam ingevuld.',4,true);
break;
case101:
Message('Fout','U heeft geen wachtwoord ingevuld.',4,true);
break;
case200:
Message('Fout','Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!',4,true);
break;
case300:
Message('Welkom'+ Result[1],'U bent succesvol ingelogd en wordt nu doorgestuurd...',3,false);
setTimeout("Redirect('index.php')",2800);
break;
}
Er staan 2 alerts in. Deze had ik erin gezet ter controle van de vars en ze komen allebei met inhoud te voorschijn maar me switch-functie pakt ze gewoon niet.
Ook heb ik het met een if-else geprobeerd en ook deze deed er niets meer mee.
Ik heb het ook al met de quote's in de switch geprobeerd, maar leverde ook niets op.
<? Kleur
Output = HttpObject.responseText;
Result = Output.split('::');
alert(Output);
alert(Result[0]);
switch ( Result[0] )
{
case 100:
Message('Fout', 'U heeft geen gebruikersnaam ingevuld.', 4, true);
break
case 101:
Message('Fout', 'U heeft geen wachtwoord ingevuld.', 4, true);
break
case 200:
Message('Fout', 'Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!', 4, true);
break
case 300:
Message('Welkom' + Result[1], 'U bent succesvol ingelogd en wordt nu doorgestuurd...', 3, false);
setTimeout("Redirect('index.php')",2800);
break
}
Nee nog niets.
Aan de functie 'Message()' ligt het ook niet.
Ik heb het nu ook voor de zekerheid gecontroleerd om deze buiten me switch aan te roepen (na de alerts) en dan verschijnt deze ook gewoon.
<? Kleur
switch ( Result[0] )
{
case 100:
Message('Fout', 'U heeft geen gebruikersnaam ingevuld.', 4, true);
break
case 101:
Message('Fout', 'U heeft geen wachtwoord ingevuld.', 4, true);
break
case 200:
Message('Fout', 'Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!', 4, true);
break
case 300:
Message('Welkom' + Result[1], 'U bent succesvol ingelogd en wordt nu doorgestuurd...', 3, false);
setTimeout("Redirect('index.php')",2800);
break
default
Message('Fout', 'Probeer het opnieuw!', 4, true);
}
<? Kleur
switch( Result[0])
{
case100:
Message('Fout','U heeft geen gebruikersnaam ingevuld.',4,true);
break
case101:
Message('Fout','U heeft geen wachtwoord ingevuld.',4,true);
break
case200:
Message('Fout','Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!',4,true);
break
case300:
Message('Welkom'+ Result[1],'U bent succesvol ingelogd en wordt nu doorgestuurd...',3,false);
Fout: LogUser is not defined
Bronbestand: index.php
Regel: 1
Maar me FireBug is bugged geloof ik. Hij geeft nu namelijk fouten in aan FireBug zelf, ff verwijderen en opnieuw installeren dan maar.
Edit
FireBug werkt weer zoals het moest, gaf gelijk een fout in me Message() functie aan, probleem verholpen in de Message() functie.
Er zat nog een klein foutje in de switch, namelijk de : bij de default.
Maar desondanks blijft het bericht komen:
Er ging iets fout...
Deze switch heb ik nu ook getest met en zonder de quote's maar toch pakt hij geen enkel ding uit de switch.
Een voorbeeld van de variable Output:
201::De door jouw opgegeven gebruikersnaam en/of wachtwoord waren niet juist.
Hierdoor wordt Result[0] dus 201.
En die 201 komt ook in een alert te staan. Maar me switch heeft er blijkbaar schijt aan
@Kr4nKz1n
Als jij iets over het hoofd ziet, ben ik wel heel benieuwd wat, want dan ben je niet de enige die iets over het hoofd ziet.
Aangezien Result[0] alleen maar waarde's kan bevatten die in de switch voor komen.
var Output = HttpObject.responseText;
var Result = Output.split('::');
var Test = "300";
alert(Output);
alert(Result[0]);
switch (Test)
{
case "100":
Message('Fout', 'U heeft geen gebruikersnaam ingevuld.', 4, true);
break
case "101":
Message('Fout', 'U heeft geen wachtwoord ingevuld.', 4, true);
break
case "200":
Message('Fout', 'Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!', 4, true);
break
case "300":
Message('Welkom' + Result[1], 'U bent succesvol ingelogd en wordt nu doorgestuurd...', 3, false);
setTimeout("Redirect('index.php')",2800);
break
default:
Message('Fout', 'Er ging iets fout...', 4, true);
}
Message('Fout','U heeft geen gebruikersnaam ingevuld.',4,true);
break
case"101":
Message('Fout','U heeft geen wachtwoord ingevuld.',4,true);
break
case"200":
Message('Fout','Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!',4,true);
break
case"300":
Message('Welkom'+ Result[1],'U bent succesvol ingelogd en wordt nu doorgestuurd...',3,false);
setTimeout("Redirect('index.php')",2800);
break
default:
Message('Fout','Er ging iets fout...',4,true);
}
Nu komt me switch wel uit waar ie zou moeten komen.
Hoe los ik het nu op, want het heeft duidelijk te maken met een int/string.
Want of ik in me switch nou wel of geen gebruik maak van quote's, ik kom altijd maar bij de default terecht.
<? Kleur
switch (Result[0])
{
case 100:
Message('Fout', 'U heeft geen gebruikersnaam ingevuld.', 4, true);
break
case 101:
Message('Fout', 'U heeft geen wachtwoord ingevuld.', 4, true);
break
case 200:
Message('Fout', 'Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!', 4, true);
break
case 300:
Message('Welkom' + Result[1], 'U bent succesvol ingelogd en wordt nu doorgestuurd...', 3, false);
setTimeout("Redirect('index.php')",2800);
break
default:
Message('Fout', 'Probeer het opnieuw!', 4, true);
}
<? Kleur
switch(Result[0])
{
case100:
Message('Fout','U heeft geen gebruikersnaam ingevuld.',4,true);
break
case101:
Message('Fout','U heeft geen wachtwoord ingevuld.',4,true);
break
case200:
Message('Fout','Uw gebruikersnaam en/of wachtwoorden bleken niet juist te zijn!',4,true);
break
case300:
Message('Welkom'+ Result[1],'U bent succesvol ingelogd en wordt nu doorgestuurd...',3,false);