Beiträge von higoka

    Füg diesen Code:

    Vor:

    PHP
    if (mysql_num_rows($email_verify) == 1) {
    $error = '1';
    $emailaddress_errors = '<div ng-if="form.emailAddress.$invalid && (!form.emailAddress.$pristine || form.$submitted)" ng-messages="form.emailAddress.$error" class="form__popover form__popover--error ng-active" ><!-- ngMessage: email, remoteDataEmailInvalid --><!-- ngMessage: required --><!-- ngMessage: remoteDataEmailUsedInRegistration --><div ng-message="remoteDataEmailUsedInRegistration">Diese Email ist bereits vergeben.<!-- ngMessage: remoteDataEmailUsedInChange --></div>';
    $emailaddress_class = 'form__input ng-invalid ng-dirty ng-invalid-email ng-valid-required ng-touched';
    }


    Ein.

    Am ende sollte es so aussehen:

    In der Datenbank selber kann allerdings auch eingestellt werden, ob die entsprechende Spalte bearbeitet werden darf von außen.
    Sprich, ich kann einstellen, dass ein Query keine Änderung an der Spalte vor nimmt und ein Standartwert eingesetzt wird.

    Ob das geht weis ich nicht.


    Wenn jedoch die Session nicht erstellt wird, warum ist dann ein User in der Tabelle registriert?
    So dürfte ja überhaupt kein User registriert sein, da nix in die Datenbank eingetragen wird.

    Weil er ein INSERT Query macht

    PHP
    $mysqli->query("INSERT INTO users (username, password, auth_ticket, rank, credits, activity_points, vip_points, look, motto, mail, account_created, ip_last, ip_reg, home_room, birth, privacy_ownsite, privacy_ownsite_money, privacy_ownsite_rooms, privacy_highscore, startroom, websocket, sicherheitsfrage, sicherheitsantwort, last_online, status, staff_inacc) VALUES
    ('" . $username . "', '" . $pw . "', '-/-', '1', '" . $register->credits . "', '" . $register->duckets . "', '" . $register->dias . "', '" . getSettings('register_look1') . "', '" . $register->motto . "', '" . $mail . "', '" . time() . "', '" . $my->ip . "', '" . $my->ip . "', '" . $register->homeroom . "', '0', '1', '1', '1', '1', '" . $startroom . "', '0', '" . $sicherheitsfrage . "', '" . $sicherheitsantwort . "', '0', '1', '0') ");


    Eine Session kann auch erstellt werden, unabhängig von der Datenbank.

    PHP
    $_SESSION['foo'] = 'bar';

    Schon ist die Session "foo" erstellt.

    Ich denke nicht, dass es am Register liegt, sondern eher, dass du in der Datenbank in Tabelle Users unter rank den Standartwert auf 0 hast.
    Das kannst du bearbeiten, indem du bei Navicat auf die Tabelle klickst und dann oben "Design table" anklickst.
    Dann kommt ein Fenster, wo du die Standartwerte verändern kannst. Solltest da normalerweise eine 0 stehen haben, wenn Ja ändere diese zu einer 1.

    Hoffe es klappt.

    Gruß

    Auch wenn in der Datenbank der Standartwert auf 0 ist, wird der Rank auf 1 gesetzt, da er im INSERT Query den Rank definiert hat.

    INSERT INTO users (username, password, auth_ticket, rank
    ('" . $username . "', '" . $pw . "', '-/-', '1'

    Ich denke eher, dass die Session nicht erstellt wird und somit nicht auf die me-page weitergeleitet wird, weil der User dann sozusagen "Nicht Eingeloggt" ist.

    Deine Antworten sind immer so klug und hilfreich. Ne, eigentlich schon fast lächerlich. "irgendwie" hinterlegen. Dann sag nächstes mal ausführlich wie man es macht, damit jeder etwas damit anfangen kann.
    Und @Rarely es lag tatsächlich daran. :thumbup: Danke

    Gerne, du kannst mit URL Rewrite die URLs umschreiben, dann musst du nicht immer .php anhängen. (Falls du das möchtest)

    Der Rank sollte eigentlich 1 sein.

    INSERT INTO users (username, password, auth_ticket, rank

    ('" . $username . "', '" . $pw . "', '-/-', '1'


    Ich denke eher es ist ein Problem mit der "getlogin()" Funktion.

    PHP
    if (getlogin($row->id, $row->username, $row->password, 'REGISTER', 'keineweiterleitung') == 'true') {
    header("location: $path/me");
    exit;
    }

    Such mal diese Funktion, wahrscheinlich in irgendeiner "Core" Datei und poste das mal hier.