Terwijl ik zo eens aan het experimenteren ben dacht ik een pagina te beveiligen met een wachtwoord wat uitgelezen word uit een txt file.

Ik begon zo, het formulier:

<!DOCTYPE html>

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
    <form name="form1" method="post" action="password.php">Wachtwoord: <input type="password" name="password"><br><input type="submit" name="Submit" value="Ga verder"> </form>
    </body>
</html>


password.php:

<?php

$wachtwoord = $_POST['password'];
$file = file_get_contents("pass.txt");
$string = "$wachtwoord";
if(!strstr($file, "$string"))
{
print "Code geaccepteerd";
else
print "Er is een fout opgetreden";
}
?>

De pagina doet helemaal niks, bij elke bewerking loop ik vast en krijg ik een error..
ik hoop dat iemand me een beetje opweg kan helpen!

met vriendelijke groet

Vreemd dat je niet ver komt met die functies? Heb je er al op geklikt, want dan kom je op de PHP-pagina uit waar die functie beschreven wordt.

Het loont wel om in ieder geval de basis van PHP te kennen, want zonder basis kom je niet ver.
Je moet weten wat een script immers doet.
Ja ik heb er wel op geklikt.. ik heb de pagina's uitvoerig doorgelezen en alles in me opgenomen.. echter weet ik niet hoe ik dit in de praktijk moet brengen.. of hoe ik moet starten..


"heb je er al op geklikt" beschouw ik als commentaar, en niet als opbouwende kritiek ;)
Ik denk dat je teveel hooi op je vork neemt....

Ben je al bekend met de basis van PHP, hoe je formulieren moet verwerken, hoe je parameters uit de URL kan halen en hoe if-elseif-else werkt?

Je legt nu je problemen uit, maar nog steeds is niet duidelijk welke foutmelding PHP geeft, en zonder dat is het lastig debuggen.
Als ik niet een beetje basis had gekent was ik nog niet zover gekomen denk ik..

Ik krijg geen error meer, hij doet gewoon niet wat ik hoopte dat hij zou doen..

Na het inloggen zegtie "Er is een fout opgetreden"

print "Er is een fout opgetreden";





wat ik nu graag zou willen weten.. waarom dit script deze melding weergeeft terwijl ik zeker weet dat het ingevoerde wachtwoord en de textfile overeen komen..



Dan zou ik eerst maar eens gaan debuggen met wat echo's:

Wat staat er in $file?
Wat staat er in $string (hoort overigens niet tussen quotes)

Verder lijkt die ! er niet te horen, ik verwacht dat je juist wilt kijken of het true is.
<?php
if(!strstr($file, "$string"))
print "Succesvol ingelogt";
else
print "Er is een fout opgetreden";
?>

Dat komt doordat jij in de if() hebt staan dat als ie bestaat naar de else moet gaan.
- SanThe - op 04/10/2014 22:29:43

<?php
if(!strstr($file, "$string"))
print "Succesvol ingelogt";
else
print "Er is een fout opgetreden";
?>

Dat komt doordat jij in de if() hebt staan dat als ie bestaat naar de else moet gaan.


je bent een held harstikke bedankt!

@aar ook bedankt voor je tijd! maar als je me dit gelijk had gezegd had je vanavond leuke dingen kunnen doen!
Fijn dat het gelukt is, evengoed doe ik tegelijkertijd leuke dingen. ;-)
Concentreer jezelf eerst eens op strings, variabelen en hoe je die twee gecombineerd kunt gebruiken.

Ik zie nu bergen variabelen welke IN een string staan, dit zal nooit gaan werken.

Reageren