Ergebnis 1 bis 3 von 3

Thema: MYSQL & PHP : Zeiten speichern

  1. #1
    HTML Newbie
    Registriert seit
    18.12.2014
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Ausrufezeichen MYSQL & PHP : Zeiten speichern

    Hallo!

    Ich bin neu hier und mir nicht ganz sicher ob ich alles richtig mache,
    aber ich weiss nicht wohin sonst mit meiner Frage..

    Ich habe mittels AJAX, PHP, MYSQL ein so genanntes "Beförderungstool" geschrieben.

    Hierbei ist der Sinn einen Mitarbeiter einzutragen in eine Tabelle, nach 90min gearbeitete Zeit
    erscheint dann eine Schrift in der Tabelle mit "Beförderungszeit!".
    Der Mitarbeiter kann dann auf Knopfdruch "Befördern" auf den nächsten Rang befördert werden.
    (Das Ganze dient natürlich nur einem Onlinespiel )

    Ich habe soweit alles alleine gepackt, nun stehe ich aber vor einem Punkt wo ich nicht mehr weiter weiss,
    und ich hoffe ihr könntet mir weiterhelfen.

    Ich scheitere an der Funktion abmelden, bei dieser soll der Mitarbeiter die Minuten die er gearbeitet hat, gutgeschrieben bekommen, und beim erneuten Anmelden das was er bereits erarbeitet hat, wieder bekommen.
    Hierzu ein Beispiel: Mitarbeiter Testacc meldet sich an, muss 90 Minuten arbeiten, geht nach 20 Minuten aber wieder,
    danach meldet er sich wieder an wenn er wieder kommt, nun muss er nurnoch 70 Minuten arbeiten.

    Mein bisheriger Code für das Anmelden:
    PHP-Code:
    <?php
    // Die Seite anmeldung.php

    $nametrim($_POST["name"]);
    $uhrzeit date("H:i"); 
    $teile explode(':'$uhrzeit);
    $uhr  date("H:i"mktime(date("$teile[0]"), date("$teile[1]")+90));

        if (
    $name == "") {
            echo 
    "Gib einen Namen ein.";
            
    $Fehler 1;
        }
        
       if (
    $Fehler != 1) {

        
    // Avatarbild

        // Zugangsdaten
        
    define('MYSQL_HOST''ausgeblendet');
        
    define('MYSQL_USER''ausgeblendet');
        
    define('MYSQL_PASS''ausgeblendet');
        
    define('MYSQL_DATABASE''ausgeblendet');

        
    // Verbindung
        
    @mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR die(mysql_error());
        
    mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

       
    $sql "INSERT INTO Angemeldet(Name, Rang, Zeit)
                SELECT Name, Rang, '"
    .$uhr."'
                FROM Mitglieder
                WHERE Name = '"
    .$name."'";
                          
        
    mysql_query($sql) OR die(mysql_error());
        
        echo 
    "<font size='2'>Mitarbeiter ".$name." angemeldet.</font>";

        
    $Angemeldet 1;

    }


    if (
    $Angemeldet != 1) {

        echo 
    "&nsbp; Nicht erfolgreich!";

    }

    ?>
    Ich hoffe jemand kann mir in meiner Verzweiflung noch helfen..
    Weiss echt nicht mehr weiter und bin über jeden Ratschlag froh!

    Danke und liebe Grüße,
    aClaim
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von aClaim (18.12.2014 um 21:04 Uhr)

  2. #2
    Teeny
    Registriert seit
    13.07.2014
    Ort
    A, A
    Beiträge
    31
    Danke
    0
    Bekam 4 mal "Danke" in 4 Postings

    Standard AW: MYSQL & PHP : Zeiten speichern

    Autsch.
    Da seh ich schonmal jede menge verschwendeten Speicherplatz.
    Name und Rang in einer Tabelle die für die Zeiterfassung dienen soll?

    Klingt jetzt kompliziert aber ich würde das ganze mit 3 Tabellen lösen.

    Tabelle1 die Memberdaten
    ID, Username, Rang usw....

    Tabelle2 die Anmeldezeiten
    ID, Zeit
    Feld ID entspricht der UserID aus Tabelle1
    Feld Zeit ist der Zeitwert der anmeldung, hier kannst du einfach time() oder ähnliches speichern

    Tabelle3 die waren Arbeitzeiten
    ID, Datum, Zeit
    Feld ID = Userid aus Tabelle1
    Datum naja das Datum halt, am besten auch in einer Form die man sortieren kann also bitte nicht dd.mm.yyyy !
    Zeit = die Arbeitszeit in Minuten

    Der Ablauf kann dann so aussehen
    User meldet sich an:
    ID wird aus Tabelle 1 geladen und zusammen mit dem Zeitwert in Tabelle 2 eingetragen.
    FERTIG

    User meldet sich ab:
    ID wird aus Tabelle 1 gezogen
    Anmeldezeit wird anhand der ID aus Tabelle2 gezogen
    Datensatz wird anhand der ID aus der Tabelle2 gelöscht !

    Anmeldezeit wird dann von aktueller Zeit abgezogen, wenn du dabei mit time() arbeitest, erhällst du damit die "Arbeitszeit" in Sekunden

    Tabelle3 wird geprüft ob Userid aus Tabelle1 und das aktuelle Datum vorhanden sind.
    Wenn nicht
    wird Userid, Datum die die Arbeitszeit in Tabelle3 gespeichert.
    Wenn ja
    wird Arbeitszeit aus Tabelle3 gelesen, mit aktuell ermittelter Arbeitszeit addiert und der vorhandene Datensatz in Tabelle3 aktualisiert.

    Meldet sich der User dann nochmal an weil er seine Arbeitszeit noch nicht voll hat. geht das ganze von vorne los.

    Sinn des ganzen ???
    Tabelle1 enthält alle festen oder fast festen Daten des Users die sich nur selten ändern.

    Tabelle 2 ist jeder User nur einziges mal vorhanden, oder gar nicht. Und zwar ist der User da nur eingetragen wenn er angemeldet ist. also hast du hier so ganz nebenbei noch einen kleinen "wie viel sind online" Zähler

    Tabelle 3 enthält dann die reinen Arbeitszeiten wobei auch hier jeder User nur 1 mal pro Tag gespeichert ist ganz egal wie oft er sich an oder abmeldet.

    Aufpassen muss man nur bei Tabelle2 das die nicht zugemöhlt wird, wenn sich ein User nur anmeldet und "vergisst" sich abzumelden.

  3. #3
    Bandit
    Gast

    Standard AW: MYSQL & PHP : Zeiten speichern

    Auszug aus den Forenregeln:
    Inhalt von Beiträgen:
    Forum-Hilfe behält sich das Recht vor, jederzeit Beiträge zu löschen, zu verschieben oder zu überarbeiten, die nicht den Forumsregeln entsprechen. Dies geschieht ohne vorherige Information des Verfassers. Die User ist alleine für die von ihnen publizierten Inhalte (Texte; Bilder oder andere Veröffentlichungen) verantwortlich und bestätigt auch damit, das er keine Copyrightgeschütze Werke und Texte hier im Forum veröffentlicht.
    Verboten oder auch unerwünscht sind folgende Inhalte:

    • extrem politisch oder religiös orientierte Postings
    • strafbare, pornographische, jugendgefährdende, beleidigende oder ehrverletzende Inhalte
    • Warez oder fremde copyrightgeschütze Werke
    • E-Mail Adressen
    • Songtexte
    • persönliche Angaben wie Telefonnummern, Adressen usw (diese bitte per PN austauschen)
    • oder anderweitig inakzeptabel Postings, die hier nicht erfasst wurden, aber gegen geltendes Recht, die guten Sitten, allgemeines Moralempfinden oder eben gegen die Forenregeln verstossen.
    • Crosspostings - die gleiche Frage in mehreren anderen Foren gleichzeitig stellen

Ähnliche Themen

  1. Mehrfachauswahl in mysql speichern?
    Von funbox im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 6
    Letzter Beitrag: 21.04.2009, 23:17
  2. MySQL: NOW() in INT speichern
    Von The User im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 9
    Letzter Beitrag: 02.02.2009, 23:03
  3. Userdaten in mysql-db speichern!?
    Von derchris im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 0
    Letzter Beitrag: 31.10.2006, 16:50
  4. html forumular in mysql speichern
    Von TheOnlyOne im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 04.08.2006, 11:58
  5. Bilder in MYSQL speichern? | Uploadscript
    Von Evil_Zangief im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 6
    Letzter Beitrag: 18.04.2006, 18:22

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •