Ik heb voor klanten en werknemers een panel.
mijn.domein
personeel.domein
De gegevens komen uit dezelfde database tabel.
Hoe kan ik klanten weigeren om als personeel in te loggen, en personeel weigeren om als klant in te loggen?
?
Onbekende gebruiker
01-10-2015 15:18
Je kan aangeven in de database dat de bepaalde user een 1 of een 0 is
Persoonlijk gebruik ik liever woorden want een 1 of 0 zegt zo weinig.
Daarnaast kan je in de query aangeven welke users hij moet controleren.
Ik zou de databasetabel dan liever 'personen' noemen, en elke persoon standaard als klant behandelen. Maar met een flag ('0 of 1') laten bepalen of diegene een personeelslid is. Die heeft dan meer rechten.
?
Onbekende gebruiker
01-10-2015 15:30
Het is me gelukt.
bedankt !
[size=xsmall]Toevoeging op 01/10/2015 15:35:52:[/size]
Kan je het ook met een keuze menu zoals hieronder ook zoiets als de 2e code maken?
<option value="http://www.mijn.domein.nl/inloggen.php">Inloggen als klant</option>
<option value="http://www.personeel.domein.nl/inloggen.php">Inloggen als personeel</option>
Je weet vantevoren toch niet of iemand een klant is of een medewerker?
Ik zou trouwens gebruikerstypen of -rollen introduceren en niet simpelweg een 0 of 1 in een enkele kolom (maar dus een koppeltabel met rechten/rollen/whatever).
Het verontrust mij wel een beetje dat je hier voorheen geen voorziening leek te hebben. Je hebt dus helemaal geen Access Control List in je applicatie zitten op dit moment? En de code in je backends controleert dus ook niet op gebruikerstype of -rechten? Ai.
Wat je ook nog zou kunnen doen: maak één login en stuur iemand naar het klant- of medewerker-backend op grond van wat deze gebruiker is. Mogelijk wil je ook nog "super gebruikers" die beide kunnen, maar meestal is het handiger om hier afzonderlijke gebruikers voor te maken.
?
Onbekende gebruiker
01-10-2015 17:08
mijn oplossing :
Al het personeel uit de leden tabel gehaald en in de tabel personeel gezet.
en dan dit:
<h3>Log in</h3>
<p>Maak hieronder uw keuze</p>
<select id="dynamic_select">
<option value="" selected>Kies</option>
<option value="http://www.mijn.domein.nl">Inloggen als klant</option>
<option value="http://www.werknemer.domein.nl">Inloggen als personeel</option>
</select><script>
$(function(){
// bind change event to select
$('#dynamic_select').on('change', function () {
var url = $(this).val(); // get selected value
if (url) { // require a URL
window.location = url; // redirect
}
return false;
});
});
</script>
Dat lijkt mij een slechte ontwerpbeslissing als leden en medewerkers verder geen inhoudelijke verschillen hebben qua data die je bij wilt houden.
Dit kan ook consequenties hebben voor andere queries, bijvoorbeeld: "hoeveel gebruikers (dit kunnen zowel leden als medewerkers zijn) heeft dit systeem?". Deze informatie moet je nu uit twee verschillende tabellen hengelen...
Ik hoop dat je hebt nagedacht over de consequenties van dit besluit en dat je ook kunt onderbouwen waarom het scheiden (echt) nodig was...