Welke gebruiker is wanneer en hoe vaak ingelogd geweest?
Op mijn site heb ik een inlogsysteem gemaakt (php/mysql) maar ik wil graag weten wie ingelogd is geweest en hoe vaak.
Hoe krijg ik dit voor elkaar
Bij voorbaat dank.
Jan van der veeken
Door dit op te slaan wanneer iemand inlogt. Dan kun je die informatie terugvragen, anders wordt het lastig.
Want waarom zou je specifiek willen weten wanneer iemand inlogt? De activiteit lijkt me veel interessanter/belangrijker.
- Ariën - op 24/05/2016 11:37:23:
Je kan ook kijken naar de laatste activiteit. Want iemand kan op bijv. 20 mei inloggen, en bijv. een jaar lang ingelogd zijn, zolang de cookie nog houdbaar is.
Want waarom zou je specifiek willen weten wanneer iemand inlogt? De activiteit lijkt me veel interessanter/belangrijker.
Want waarom zou je specifiek willen weten wanneer iemand inlogt? De activiteit lijkt me veel interessanter/belangrijker.
Hoe kan ik die activiteit zichtbaar maken?
Quote:
Hoe kan ik die activiteit zichtbaar maken?
Maak allereerst een database tabel aan waarin elke activiteit opgeslagen wordt. Elke mogelijke activiteit op je website is dus één nieuwe regel in die tabel.
Sla daarbij bijvoorbeeld op;
- wat de actie was
- wie de actie heeft gedaan (gebruiker_ID)
- waarvandaan die actie heeft plaats gevonden (ip adres)
- wanneer de actie heeft plaats gevonden (moment; datetime)
- etc
Als je vervolgens alles van een bepaalde gebruiker_ID ophaalt uit de DB zie je precies wat die allemaal heeft gedaan.
Bij elke bezoeker hield ik per hit bij op welke pagina ze waren, en op welke datum en tijdstip. Als deze ouder was dan 5 minuten, dan verwijderde ik hem uit de lijst.
Ramon van Dongen op 24/05/2016 12:19:29:
Maak allereerst een database tabel aan waarin elke activiteit opgeslagen wordt. Elke mogelijke activiteit op je website is dus één nieuwe regel in die tabel.
Sla daarbij bijvoorbeeld op;
- wat de actie was
- wie de actie heeft gedaan (gebruiker_ID)
- waarvandaan die actie heeft plaats gevonden (ip adres)
- wanneer de actie heeft plaats gevonden (moment; datetime)
- etc
Als je vervolgens alles van een bepaalde gebruiker_ID ophaalt uit de DB zie je precies wat die allemaal heeft gedaan.
Quote:
Hoe kan ik die activiteit zichtbaar maken?
Maak allereerst een database tabel aan waarin elke activiteit opgeslagen wordt. Elke mogelijke activiteit op je website is dus één nieuwe regel in die tabel.
Sla daarbij bijvoorbeeld op;
- wat de actie was
- wie de actie heeft gedaan (gebruiker_ID)
- waarvandaan die actie heeft plaats gevonden (ip adres)
- wanneer de actie heeft plaats gevonden (moment; datetime)
- etc
Als je vervolgens alles van een bepaalde gebruiker_ID ophaalt uit de DB zie je precies wat die allemaal heeft gedaan.
Hallo
Ben erg blij met je hulp maar ik heb nog wat vragen
Hoe koppel ik de 2 tabellen en hoe Zorg ik dat de tabellen de gegevens opslaan?
Alvast bedankt. Jan
Toevoeging op 24/05/2016 16:05:44:
- Ariën - op 24/05/2016 12:28:03:
Voor mijn vorige profielensite hield ik in een 'online_users' tabel bij wie er op dat moment online waren.
Bij elke bezoeker hield ik per hit bij op welke pagina ze waren, en op welke datum en tijdstip. Als deze ouder was dan 5 minuten, dan verwijderde ik hem uit de lijst.
Bij elke bezoeker hield ik per hit bij op welke pagina ze waren, en op welke datum en tijdstip. Als deze ouder was dan 5 minuten, dan verwijderde ik hem uit de lijst.
Hallo Ariën
Zo een online users tabel moet dit een aparte tabel zijn, hoe koppel ik deze tabel aan mijn users?
Groeten Jan
http://www.w3schools.com/sql/sql_foreignkey.asp foreign key kan voor het koppelen van tabellen
Connecten met de database: http://www.w3schools.com/php/php_mysql_connect.asp
SQL -> INSERT INTO voor het invullen/opslaan van gegevens in de tabellen
En de rest van die tutorialonderdelen voor een algemeen begrip
Connecten met de database: http://www.w3schools.com/php/php_mysql_connect.asp
SQL -> INSERT INTO voor het invullen/opslaan van gegevens in de tabellen
En de rest van die tutorialonderdelen voor een algemeen begrip
Gewijzigd op 24/05/2016 18:03:41 door - Ariën -
Jullie doen allemaal je best om mij te helpen, maar schatten mij te hoog in.
Op de website van Gemengd koor AAmbicius heb ik een inlogsysteem om de oefenbestanden te kunnen oefenen (ledeninlog verplich van Buma Stemra), nu werkt dit prima maar wil ik graag bijhouden wie er werkelijk oefent en hoe vaak.
Ik ga met jullie antwoorden aan de slag maar loop steeds tegen zaken aan waardoor ik niet verder kom bv als je met de foreign key wil werken in de database dan krijg ik een foutmelding en de melding van joins en SQL -> INSERT INTO daarvoor is mijn kennis nieyt toerijkend omdat het te sumier is.
Als ik het voor elkaar heb dan heb ik de kennis voorlopig niet meer nodig.
Het meeste heb ik geleerd met video's van Youtube, maar over dit onderwerp kan ik geen video vinden.
Met vriendelijke groet,
Jan van der Veeken
Als je precies vertelt waar je tegen aan loopt, en welke foutmeldingen je krijgt, en wat je precies doet... dan kunnen we je tijdens die stap weer verder helpen.
Toen ik bij localhost de tabelcode inplakte ( van LdeB http://www.w3schools.com/sql/sql_foreignkey.asp) kreeg ik de melding error 150 voor de foreign key .
Als ik het goed begrijp maak ik naast de tabel met users nog een tabel waar het bezoek van de users wordt bij gehouden, maar ik moet dan toch ook in php de insert info gebruiken maar hoe en op welke pagina.
Dit zijn de zaken waar ik tegen aan loop.
Ik heb ook naar een bestaand script gezocht waar dit al in geregeld is en het laatste inlogscript dat ik op www.ambicius.nl heb gebruikt is ook een bestaand script wat ik heb aangepast.
Groeten Jan
Bij de aanroep van elke pagina moet er een INSERT of een UPDATE plaatsen, het ligt er aan of de gebruiker al actief is, of juist niet. Dit kan je prima in een include() regelen, centraal in je site.
Met vriendelijke groet,
Jan van der Veeken
Gewijzigd op 24/05/2016 21:27:15 door - Ariën -
Mijn eerste inlogpagina heb ik met dreamweaver cs6 gemaakt.
Jan
Je moet gewoon kijken of iemand al in de online_users lijst staat, en dan moet je een UPDATE doen, als deze er niet in staat dan moet je een INSERT doen.
- Ariën - op 24/05/2016 22:23:38:
Toch ben ik benieuwd waar je op vast loopt? Een INSERT / UPDATE query is niet zo heel moeilijk.
Je moet gewoon kijken of iemand al in de online_users lijst staat, en dan moet je een UPDATE doen, als deze er niet in staat dan moet je een INSERT doen.
Je moet gewoon kijken of iemand al in de online_users lijst staat, en dan moet je een UPDATE doen, als deze er niet in staat dan moet je een INSERT doen.
Onderstaand een op internet gevonden code, in welk bestand moet ik de code zetten (login.php)?
insert into myUserTable ( userId , login_time ) values ( 3421 , 432432 ) ;
update myUserTable set logged_counts = logged_counts + 1 ;
insert into myUserTable ( userId , login_time ) values ( 3421 , 3122 ) on DUPLICATE KEY UPDATE logged_counts = logged_counts + 1 ;
-- if the table is empty it will insert 0 as the first value, as long as u do not have default as 1
Verder heb ik geen inzicht in je code, maar ik denk dat het wel duidelijk moet zijn. Er is uiteraard verschil tussen inloggen en actief zijn.
Krijg steeds de melding Unexpexted into after insert waar ik de code ook plaats
Wat doe je dan precies? Laat je relevante code eens zien?