Hallo iedereen

Ik ben bezig met een scriptje te schrijven voor een vriend zijn website, maar ik heb even jullie hulp nodig.

Het is de bedoeling dat volgend scriptje eerst een formulier met 2 velden toont. (user en userpass)

Dat stukje heb ik voorlopig vervangen door de variabelen die door dat formuliertje gedeclareerd moeten worden al vast te stellen.

Even mijn scriptje:

<?php
//The users
$user1 = 'Bavo';
$user1pass = 'test';
$user2 = 'Seppe';
$user2pass = 'test';
$user3 = 'Amani';
$user3pass = 'test';
$user4 = 'Name1';
$user4pass = 'test';
$user5 = 'Name2';
$user5pass = 'test';
$user6 = 'Name3';
$user6pass = 'test';
//To be replaced by form
$user = 'Bavo';
$userpass = 'test';
//Login check
if (($user1 == $user) and ($user1pass == $userpass))
or
(($user2 == $user) and ($user2pass == $userpass))
or
(($user3 == $user) and ($user2pass == $userpass))
or
(($user4 == $user) and ($user2pass == $userpass))
or
(($user5 == $user) and ($user2pass == $userpass))
or
(($user6 == $user) and ($user2pass == $userpass))
{
echo("Welkom $user");
}
else
{
echo("Sorry, maar je bent niet ingelogd. Probeer je eens opnieuw in te loggen.");
}
?>

Nu waar ik jullie hulp nodig bij heb: Het scriptje werkt niet. Het genereert geen PARSE ERROR, maar er komt gewoon geen output.

Alvast bedankt voor jullie hulp, indien meer info nodig, vragen staat vrij ;)

edit:
Zo werkt het wel, maar dan moet ik de verdere code telkens 6 keer kopiƫren en dat is ook niet handig...

<?php
//The users
$user1 = 'Bavo';
$user1pass = 'test';
$user2 = 'Seppe';
$user2pass = 'test';
$user3 = 'Amani';
$user3pass = 'test';
$user4 = 'Name1';
$user4pass = 'test';
$user5 = 'Name2';
$user5pass = 'test';
$user6 = 'Name3';
$user6pass = 'test';
//To be replaced by form
$user = 'Name3';
$userpass = 'test';
//Login check
if (($user1 == $user) and ($user1pass == $userpass))
{
echo("Welkom $user");
}
else
{
if (($user2 == $user) and ($user2pass == $userpass))
{
echo("Welkom $user");
}
else
{
if (($user3 == $user) and ($user3pass == $userpass))
{
echo("Welkom $user");
}
else
{
if (($user4 == $user) and ($user4pass == $userpass))
{
echo("Welkom $user");
}
else
{
if (($user5 == $user) and ($user5pass == $userpass))
{
echo("Welkom $user");
}
else
{
if (($user6 == $user) and ($user6pass == $userpass))
{
echo("Welkom $user");
}
} } } } }
?>
waarom gebruik je geen database voor de usernames en wachtwoorden?
Omdat ik het de moeite niet vind om een database te configureren voor 6 gebruikers met een username en passwoord.
Dit is eigenlijk een scriptje voor een website die ik maak, maar waarvan de inhoud (die wel in een database komt) moet aangepast en gemaakt worden door die vriend. :)
Zet dit eens bovenin dan krijg je vast errors te zien.
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
?>
Zo niet, zoek het dan in de if() daar klopt iets niet.
Je hebt namelijk
if((..=..) and (..=..)) or ......
en er wordt een { verwacht vlak voor de or. Er moeten om de totale if() namelijk ook nog haken.
SanThe schreef op 21.03.2007 12:42

Zo niet, zoek het dan in de if() daar klopt iets niet.
Je hebt namelijk
if((..=..) and (..=..)) or ......
en er wordt een { verwacht vlak voor de or. Er moeten om de totale if() namelijk ook nog haken.


Ah, dat ga ik onmiddelijk eens proberen! Ik heb mijn regeltjes dus nog niet goed geleerd... ;)

edit: nu werkt het, bedankt voor de snelle hulp :)
Je kan ook gebruik maken van elseif in plaats van If (..){..} Else {If(..){..})
kun je het zo doen:
If(voorwaarde){..;}
elseif(voorwaarde2){..;}
elseif(voorwaarde3){..;}
elseif(voorwaarde4){..;}
else{..;} << wordt gebruikt als er aan geen van de voorwaarde word voldaan
@Scrptr:
bij de twee elsif wordt het wel tijd voor een switch..

<?php
//mijn voorstel
$user = 'Name3';
$userpass = 'test';
//korter:
$pass=array("Bavo"=>"test","Seppe"=>"test");
if(in_array($pass[$user]) AND $pass[$user]==$userpass){ // in_array ff nakijken ik heb hier geen server bij de hand
echo'welkom';
}else{
echo'hoepel op';
}
?>
Wow, ik doe het voorlopig met if, elseif ken ik ook, maar ik ben nog maar beginneling dus ik hou het zo eenvoudig mogelijk. Wat de persoon boven mij uitlegt snap ik al helemaal niet... :p
Het is gewoon korter, als je alles wilt uitschrijven kun je het ook doen zoals je dat in je tweede voorbeeld deed (in je eerste post op dit topic), alleen een foutje is sneller gemaakt
Oja, ik heb nog een vraagje: Als je een variabele wil bepalen a.d.h.v. de invoer van een veld in een formulier (dus eigenlijk de letterlijke inhoud van dat veld als variabele instellen) Hoe doe je dat precies? Ik vind geen duidelijke tutorial en in mijn boek (PHP5 en MySQL het complete HANDboek) vind ik niet direkt een oplossing.
formulier met post of get en dan het veld oproepen met $_GET[veldnaam] of $_POST[veldnaam], dus niet vergeten om je velden ook een "name" mee tegeven, maar dat is meer html...

uitleg eigenscript, array is een boekenplank: "titelboek"=>"inhoud" het enige wat ik doe is kijken of het boek bestaat (in_array(enz)) en of de inhoud dan correct (van de plank,$pass het boek, $pass[Bavo] de inhoud checken). zoek maar ff in je boek of array, soms is dat best handig.

Reageren