login  Naam:   Wachtwoord: 
Registreer je!
 Forum

laatst online

Offline webbiexl - 28/04/2005 12:15
Avatar van webbiexlPHP interesse hey ik heb dit stukje geschreven kan niet anders dan kloppen eigenlijk maar ik weet eigenlijk niet precies waar ik hm moet plaatsen in t membersysteem?
  1. if(!isset($_SESSION['gebruiker'])) {
  2. $datum2 = date("d-m-Y H:i:s");
  3. $updatedatum2 = "UPDATE leden SET datum2='".$datum2."' WHERE gebruikersnaam='".$_SESSION['gebruiker']."'";
  4. $query = mysql_query($updatedatum2);
  5. }

tis dus de bedoeling dat als een member in heeft gelogd dit wordt gewijzigd maar dat was denk wel duidelijk

5 antwoorden

Gesponsorde links
Offline xSc - 28/04/2005 12:36 (laatste wijziging 28/04/2005 12:48)
Avatar van xSc Onbekend In naam der wet verbied ik je, je code te plaatsen.

Doe het zo:

  1. <?php
  2.  
  3. if (!isSet($_SESSION['gebruiker']))
  4. {
  5.  
  6. if (!mysql_query("UPDATE leden SET datum2 = NOW() WHERE gebruikersnaam = '" . $_SESSION['gebruiker'] . "'"))
  7. {
  8.  
  9. trigger_error('Tijdstip van laatst online gebruiker kan niet worden bijgewerkt.');
  10.  
  11. }
  12.  
  13. }
  14. ?>


Commentaar:

1. Datum/tijd sla je respectievelijk op als DATE/DATETIME. Uitlezen in een gewenst formaat kan met de MySQL-functie DATE_FORMAT().
2. Zorg voor goede foutafhandeling. De if/else-constructie geniet de voorkeur.
3. Kies betere (variabele)namen. datum2 en $query zijn absoluut onhandig.
Offline webbiexl - 28/04/2005 13:07 (laatste wijziging 28/04/2005 13:08)
Avatar van webbiexl PHP interesse ok snap ik² weer wat geleerd
maar moet ik die hierin plaatsen als k hm per loginbeurt wil updaten
ledensysteem van murfy -> sessie.php

  1. <?php
  2. session_start(); // start een sessie of zet een sessie voort
  3. // als de gebruiker is ingelogd
  4. if(!isset($_SESSION['gebruiker']) && isset($_COOKIE['gebruikersnaam']) && isset($_COOKIE['wachtwoord'])) {
  5. // Gegevens uit koekje halen
  6. $zoek = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_COOKIE['gebruikersnaam']."' AND wachtwoord='".$_COOKIE['wachtwoord']."'");
  7. if(mysql_num_rows($zoek) > 0) {
  8. while($geg = mysql_fetch_assoc($zoek)) {
  9. $_SESSION['gebruiker'] = $geg['gebruikersnaam'];
  10. $_SESSION['gid'] = $geg['id'];
  11. header("Location: ".$_SERVER['REQUEST_URI']);
  12. }
  13. } else {
  14. $_SESSION = array();
  15.  
  16. // cookies deleten
  17. if(isset($_COOKIE['gebruikersnaam'])) {
  18. setcookie("gebruikersnaam", "", time(), "/");
  19. }
  20. if(isset($_COOKIE['wachtwoord'])) {
  21. setcookie("gebruikersnaam", "", time(), "/");
  22. }
  23. }
  24. }
  25. ?>


en waar is t t handigst:?:
Offline xSc - 28/04/2005 13:10
Avatar van xSc Onbekend Je controleert aan het begin van elke pagina toch of iemand in gelogd is, of niet?

Dus deze code voer je uit wanneer men inlogt én aan het begin van elke pagina (als men dus ingelogd is, uiteraard). (Denk aan het gebruik van functies).
Offline webbiexl - 28/04/2005 13:38 (laatste wijziging 28/04/2005 13:41)
Avatar van webbiexl PHP interesse pff kheb moeite met fucties zelf maken, uberhaupt nog met php want ik weet nooit waar ik moet beginnen, heb ik nog ni helemaal door, maar t komt!

ff proberen dan
  1. <?php
  2.  
  3. function laatstonline()
  4. {
  5. if (!isSet($_SESSION['gebruiker']))
  6. {
  7.  
  8. if (!mysql_query("UPDATE leden SET datum2 = NOW() WHERE gebruikersnaam = '" . $_SESSION['gebruiker'] . "'"))
  9. {
  10.  
  11. trigger_error('Tijdstip van laatst online gebruiker kan niet worden bijgewerkt.');
  12.  
  13. }
  14.  
  15. }
  16. //moet hier tog niets meer echo-n of iets anders??
  17. }
  18. ?>


*stik* klopt tog voor geen meter... (zou makkelijk zijn als alles wordt voorgekauwd, maja daar heb ik zelfs niets aan)
Offline webbiexl - 28/04/2005 16:19 (laatste wijziging 28/04/2005 16:45)
Avatar van webbiexl PHP interesse
  1. CREATE TABLE leden (
  2. mid INT(10) AUTO_INCREMENT,
  3. gebruikersnaam VARCHAR(255) NOT NULL,
  4. wachtwoord VARCHAR(255) NOT NULL,
  5. email VARCHAR(255) NOT NULL,
  6. voornaam VARCHAR(100) NOT NULL,
  7. achternaam VARCHAR(100) NOT NULL DEFAULT "-",
  8. geboortedatum DATE DEFAULT "01-01-1900", //<- komma vergeten :$
  9. datum int(22) NOT NULL default "0",
  10. datum2 int(22) NOT NULL default "0",
  11. geslacht ENUM("man", "vrouw"),
  12. woonplaats VARCHAR(100) NOT NULL DEFAULT "-",
  13. msn VARCHAR(75) NOT NULL DEFAULT "-",
  14. website VARCHAR(100) NOT NULL DEFAULT "http://",
  15. PRIMARY KEY (mid)
  16. ) TYPE=MyISAM;


hier zit ook nog ergens een fout tussen datum en datum2 maar waar??

[EDIT] heb t al 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.265s