[php] Of bla... òf bla... werkt niet... WAAROM!?!?

Pagina: 1
Acties:

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Ik wil gewoon dat slechts 2 IP adressen een bepaalde pagina kunne bezoeken en alle anderen een rot op melding krijgen.
Om de een of andere rede werkt niks wat ik probeer...
PHP:
1
2
3
4
5
6
7
8
<?
if ($ipadres != "213.xx.xx.xx" || "213.xx.xx.xx"){ 
echo ("Oprotten!!");
}
else { 
echo("Halloooo!");
}
?>

Ik heb ook al geprobeerd:
if ($ipadres != "213.xx.xx.xx" || $ipadres != "213.xx.xx.xx"){
if ($ipadres != "213.xx.xx.xx" | "213.xx.xx.xx"){

Verwijderd

PHP:
1
2
3
<?
if ( ($ipadres != "213.xx.xx.xx") || ($ipadres != "213.xx.xx.xx") )
?>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

tis nieuwjaar dus ik zal vriendelijk zijn :)

http://www.php.net/manual/en/control-structures.php#control-structures.if
dit is wel heel basic php een if-je
dus lees eens wat tuts of koop eens een boek :)

Doet iets met Cloud (MS/IBM)


  • Onno
  • Registratie: Juni 1999
  • Niet online
code:
1
if ($ipadres != "213.xx.xx.xx" || "213.xx.xx.xx"){

Die kan sowieso niet. Hij evalueert nu "213.xx.xx.xx", en niet $ipadres != "213.xx.xx.xx".
code:
1
if ($ipadres != "213.xx.xx.xx" | "213.xx.xx.xx"){

Hetzelfde probleem.
code:
1
if ($ipadres != "213.xx.xx.xx" || $ipadres != "213.xx.xx.xx"){

Dat kan wel, alleen denk eens na over wat hier eigenlijk staat. Of het IP is niet A, of het is niet B. Dat geldt toch per definitie voor *elk* IP? Andere constructie verzinnen dus.

Verwijderd

PHP:
1
2
3
<?
if (($ipadres != "213.xx.xx.xx") &amp;&amp; ($ipadres != "213.xx.xx.xx"))
?>

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Ok thnx. Idd wel logisch achteraf, altijd zo... |:(

Verwijderd

Victorio ... heb jij icq of msn ofzo ... :P ... .

  • vinnux
  • Registratie: Maart 2001
  • Niet online
Op zich zou het wel leuk zijn als de constructie :
code:
1
2
3
4
if ( a == ( "een" || "twee"))
{

}

Mogelijk zou zijn. Het zou wel heel erg handig zijn af en toe en om nou te zeggen dat het onoverzichtelijk is. Vind ik niet. Misschien is het beter om || te vervangend door een haakje.
code:
1
2
3
4
if ( a == ( "een" , "twee"))
{

}

Hoe denken jullie hierover ?

  • Mithrandir
  • Registratie: Januari 2001
  • Laatst online: 14-09 20:56
Op dinsdag 01 januari 2002 16:42 schreef vgouw het volgende:
Op zich zou het wel leuk zijn als de constructie :
code:
1
2
3
4
if ( a == ( "een" || "twee"))
{

}

Mogelijk zou zijn. Het zou wel heel erg handig zijn af en toe en om nou te zeggen dat het onoverzichtelijk is. Vind ik niet. Misschien is het beter om || te vervangend door een haakje.
code:
1
2
3
4
if ( a == ( "een" , "twee"))
{

}

Hoe denken jullie hierover ?
De eerste manier lijkt me redelijk. Blijft overzichtelijk(er!), en gaat sneller :)

Verbouwing


  • The - DDD
  • Registratie: Januari 2000
  • Laatst online: 03-09 16:40
Op dinsdag 01 januari 2002 16:42 schreef vgouw het volgende:
Op zich zou het wel leuk zijn als de constructie :
code:
1
2
3
4
if ( a == ( "een" || "twee"))
{

}

Mogelijk zou zijn. Het zou wel heel erg handig zijn af en toe en om nou te zeggen dat het onoverzichtelijk is. Vind ik niet. Misschien is het beter om || te vervangend door een haakje.
code:
1
2
3
4
if ( a == ( "een" , "twee"))
{

}

Hoe denken jullie hierover ?
Ik zeg: switch

In C:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
switch (waarde)
{
  case 1:
    // doe iets
    break;
  case 2:
    // doe iets
    break;
  case 3:
    // doe iets
    break;
  default:
    // de standaard optie als er geen passende case is gedefinieerd.
    break;
}

Bovendien is het pure onzin om gebasseerd op hogere generatie code een uitspraak te doen over de snelheid er van. Wat uitmaakt is het aantal benodigde instructies om het uit te voeren. En die zie je alleen in 1ste of 2de generatie code. (machine code, assembly code).

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op dinsdag 01 januari 2002 19:17 schreef The - DDD het volgende:
Bovendien is het pure onzin om gebasseerd op hogere generatie code een uitspraak te doen over de snelheid er van. Wat uitmaakt is het aantal benodigde instructies om het uit te voeren. En die zie je alleen in 1ste of 2de generatie code. (machine code, assembly code).
minder code betekent wel minder parsetijd :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • The - DDD
  • Registratie: Januari 2000
  • Laatst online: 03-09 16:40
Voor het parsen heb je een antal instructies nodig en vervolgens voor het uitvoeren hiervan heb je een aantal instructies nodig. Hoeveel kun je echt niet weten.

Met profiling kun je een aardig beeld krijgen, maar dan blijft het toch nog behoorlijk gissen naar de exacte waarden.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

duh, maar minder parsetijd is minder parsetijd (over het uitvoeren ervan heb ik niets gezegd), en bovendien maakte ik maar een geintje :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Op dinsdag 01 januari 2002 16:42 schreef vgouw het volgende:
Op zich zou het wel leuk zijn als de constructie :
code:
1
2
3
4
if ( a == ( "een" || "twee"))
{

}

Mogelijk zou zijn. Het zou wel heel erg handig zijn af en toe en om nou te zeggen dat het onoverzichtelijk is. Vind ik niet. Misschien is het beter om || te vervangend door een haakje.
code:
1
2
3
4
if ( a == ( "een" , "twee"))
{

}

Hoe denken jullie hierover ?
De eerste versie zou volgens mij "een" en "twee" bitwise gaan vergelijken met de or operator. Vervolgens zou hij kijken of a gelijk is aan het resultaat hiervan.

Je tweede versie is misschien logischer, maar toch levert dat problemen als je daarmee dingen gaat nesten. Problemen qua overzichtelijkheid bedoel ik.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

PHP:
1
2
3
4
5
6
7
<?
$allow_ip = array ("231.14.53.143", "11.45.245.154");
if (in_array ($ip, $allow_ip))
    echo "hoi";
else
    echo "oprotten";
?>

:+

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Op woensdag 02 januari 2002 04:36 schreef OiSyN het volgende:
:+
of in de trend van de vraagsteller:
PHP:
1
2
3
4
5
6
<?
if (in_array ($ip, array("231.14.53.143", "11.45.245.154")))    
  echo "hoi";
    else    
  echo "oprotten";
?>
minder code betekent wel minder parsetijd
;)

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR

Pagina: 1