Mijn vraag:
Ik ben een webshop aan het maken, alleen de loginpagina werkt niet
Meestal programmeer ik in Java/javascript, en van PHP heb ik niet heel veel verstand...
De website heeft een modulaire opbouw. In de basis, index.php start ik de session. In het midden komt een basis-stuk met de content.
Als iemand wilt inloggen, vult diegene zijn pass en gebruikersnaam in en dan wordt de volgende code gestart:
En daarna:
Mijn probleem is dat het me niet lukt om de variabelen $usernamecheck en $passwordcheck in de vorm van een array te krijgen met daarin alle passwords en usernames die tot nu toe geregistreerd staan (Ja,
ik weet dat dit een behoorlijk slechte methode is maar op deze manier is het simpel, snap ik de code en de webshop hoeft niet perse goed beveiligd te zijn
De webshop is verbonden met een MySQL database met daarin een tabel klanten: [klant_id, username, password, naam]. Ik heb al op internet rondgekeken maar op één of andere manier lukt het me niet om de code goed te implementeren.
Mijn tweede probleem is dat als iemand inlogt, ik wil dat hij ingelogd blijft. Dus daarom staat er bij de inlogpagina:
Maar als ik inlog, klik op home, en dan weer op de inlogpagina krijg ik NIET mijn accountpagina te zien. Terwijl ik wél session_start heb in index.php, login.php, én accountpagina.php
Hoe kan dit? Heeft iemand hier alsjeblieft een oplossing voor?
Relevante software en hardware die ik gebruik: Ik gebruik Usbwebserver voor het hosten (met Apache en MySQL)
Wat ik al gevonden of geprobeerd heb: Een halfuur lang naar mijn beeldscherm staren (werkte niet).
Ik heb ook op de sub-pagina voor het inloggen een session starten, maar dat werkte ook niet. Verder heb ik gezocht op internet naar oplossingen om de database in een array te zetten, maar ik heb weinig php-kennis en snap niet hoe dat werkt.
Alvast bedankt voor jullie antwoord!
Overigens probeer ik ook een admin-gedeelte aan te maken in de site om producten aan te passen en toe te voegen, heeft iemand tips hiervoor?
Ik ben een webshop aan het maken, alleen de loginpagina werkt niet
Meestal programmeer ik in Java/javascript, en van PHP heb ik niet heel veel verstand...
De website heeft een modulaire opbouw. In de basis, index.php start ik de session. In het midden komt een basis-stuk met de content.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| <?php session_start(); include('connect.php'); ?> <div class="navbartop"> <?php include('navbar.html'); ?> </div> <div class="content"> <?php if(isset($_GET['pagina'])){ $keuze = $_GET['pagina']; } else { Include("home.html"); } if($keuze==1){ include("home.html"); } if($keuze==2) { include("producten.html"); } if($keuze==3){ include("account.html"); } if($keuze==4){ include("contact.html"); } if($keuze==5){ include('about.html'); } if($keuze==6){ include('accountpagina.html'); } ?> </div> //de rest |
Als iemand wilt inloggen, vult diegene zijn pass en gebruikersnaam in en dan wordt de volgende code gestart:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| <?php session_start(); $usernamecheck = 'admin'; $passwordcheck = 'admin'; //als formulier verzonden if($_SERVER['REQUEST_METHOD'] == 'POST') { if(isset($_POST['usernameinput'], $_POST['passwordinput'])){ $username = ($_POST['usernameinput']); $password = ($_POST['passwordinput']); if($usernamecheck == $username && $passwordcheck == $password){ $_SESSION['logged_in'] = true; $_SESSION['user'] = $username; header('refresh:2; url=accountpagina.php'); echo 'Je bent ingelogd.'; } else { header('refresh:2; url=account.html'); echo 'Verkeerd wachtwoord of gebruikersnaam'; } } else { header('refresh:2; url=account.html'); echo 'Vul alle velden in'; } } else { header('url=account.html'); exit(); } |
En daarna:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| <?php session_start(); // login check if(!isset($_SESSION['logged_in']) || $_SESSION['logged_in'] == false) { header('Location: account.html'); exit(); } else { echo 'Welkom terug, '.$_SESSION['user'].'!'; header('Refresh: 3; url=index.php?pagina=6'); } ?> |
Mijn probleem is dat het me niet lukt om de variabelen $usernamecheck en $passwordcheck in de vorm van een array te krijgen met daarin alle passwords en usernames die tot nu toe geregistreerd staan (Ja,
ik weet dat dit een behoorlijk slechte methode is maar op deze manier is het simpel, snap ik de code en de webshop hoeft niet perse goed beveiligd te zijn
De webshop is verbonden met een MySQL database met daarin een tabel klanten: [klant_id, username, password, naam]. Ik heb al op internet rondgekeken maar op één of andere manier lukt het me niet om de code goed te implementeren.
Mijn tweede probleem is dat als iemand inlogt, ik wil dat hij ingelogd blijft. Dus daarom staat er bij de inlogpagina:
code:
1
2
3
4
5
6
7
8
9
10
11
| <?php if(!isset($_SESSION['logged_in']) == true) { header('url=index.php?pagina=6'); exit(); } else { ?> <h1>Inloggen</h1> //formuliertje |
Maar als ik inlog, klik op home, en dan weer op de inlogpagina krijg ik NIET mijn accountpagina te zien. Terwijl ik wél session_start heb in index.php, login.php, én accountpagina.php
Hoe kan dit? Heeft iemand hier alsjeblieft een oplossing voor?
Relevante software en hardware die ik gebruik: Ik gebruik Usbwebserver voor het hosten (met Apache en MySQL)
Wat ik al gevonden of geprobeerd heb: Een halfuur lang naar mijn beeldscherm staren (werkte niet).
Ik heb ook op de sub-pagina voor het inloggen een session starten, maar dat werkte ook niet. Verder heb ik gezocht op internet naar oplossingen om de database in een array te zetten, maar ik heb weinig php-kennis en snap niet hoe dat werkt.
Alvast bedankt voor jullie antwoord!
Overigens probeer ik ook een admin-gedeelte aan te maken in de site om producten aan te passen en toe te voegen, heeft iemand tips hiervoor?
[ Voor 6% gewijzigd door wouterg00 op 28-04-2017 23:44 ]