Mikepau: T-LOGICAL_END Fehlermeldung

Hallo Allerseits,

weiß einer was am Nachfolgenden falsch ist ? Es kommt obige Meldung, natürlich mit Unterstrichen dazwischen. (T_LOGICAL_AND)

if ( ( ( (MEMBER != 'true') && ($check_attendee['member_level'] == '1') ) OR ( (MEMBER == 'true') && ($check_attendee['member_level'] != '1') ) OR ( (MEMBER != 'true') && ($check_attendee['member_level'] != '1') ) ) ) AND (email_must_validate((int)$check_attendee['members_id']))){

Das ganze erscheint,wenn mann auf Passwortvergessen geht um ein Neues anzufordern.

Ich danke euch schon mal im Voraus Gruß Mike

  1. Tach!

    weiß einer was am Nachfolgenden falsch ist ? Es kommt obige Meldung, natürlich mit Unterstrichen dazwischen. (T_LOGICAL_AND)

    Die Klammer vor dem AND ist das Gegenstück zur öffnenden Klammer hinter dem if. Danach wird der Anweisungsblock vom if erwartet, das AND ist da syntaktisch falsch. Wenn man dem Code mal ein paar Zeilenumbrüche und Einrückungen spendiert, sieht man das besser. Und vor allem ist es besser zu erkennen, was da wie zusammengehören soll.

    dedlfix.

    1. Danke dedlfix,

      heißt das, ich kann das AND dort einfach weglassen oder wie umschreiben.

      Mike

      1. Tach!

        heißt das, ich kann das AND dort einfach weglassen oder wie umschreiben.

        Du musst das so schreiben, wie es deine Logik erfordert und syntaktisch richtig ist.

        dedlfix.

        1. Tach auch,

          wenn ich das könnte würde ich hier nicht nachfragen. Kanns Du es korrigieren? Gruß Mike

          1. wenn ich das könnte würde ich hier nicht nachfragen.

            Das kann dedlfix definitiv nicht, weil ihm Informationen fehlen, insbesondere die, was "deine Logik erfordert". Und er sollte es auch nicht versuchen.

            Das Resultat wäre nämlich womöglich, dass Deine Webseite irgendwann mal freitags in der Zeitung steht.

          2. Hallo Mikepau,

            wenn ich das könnte würde ich hier nicht nachfragen. Kanns Du es korrigieren?

            Nein. Also syntaktisch schon. Aber um das logisch korrekt zu haben, fehlen einige Angaben.

            Bis demnächst
            Matthias

            --
            Dieses Forum nutzt Markdown. Im Wiki erhalten Sie Hilfe bei der Formatierung Ihrer Beiträge.
  2. Das ganze erscheint,wenn mann auf Passwortvergessen geht um ein Neues anzufordern.

    Aha. Es geht um eine Login-Geschichte. Das ist ganz explizit was für Leute, die sehr genau wissen was sie tun. Ich aber sehe sowas:

    if ( ( ( (MEMBER != 'true') && ($check_attendee['member_level'] == '1') ) OR ( (MEMBER == 'true') && ($check_attendee['member_level'] != '1') ) OR ( (MEMBER != 'true') && ($check_attendee['member_level'] != '1') ) ) ) AND (email_must_validate((int)$check_attendee['members_id']))){
    

    Bad, bad, bad!

    ToDo: Code aufräumen, Dich über Datentypen informieren und diese auch verwenden, Quelltext strukturieren(*), nicht ständig andere Aliase (hier "AND" und "&&") benutzen. Das hier ist "Kraut und Rüben", dass will man in einer Login-Geschichte definitiv nicht haben und auch nicht sehen.

    Es ist im Hinblick auf das Posting (Programmiersprache nicht genannt, "Tag" falsch, Fehlermeldung unvollständig, Code nicht abgegrenzt, Informationen ohne Zusammenhang zum Problem) definitiv keine gute Idee, Dich dabei zu unterstützen, Dir sowas mit Copy und Paste zusammenzufriemeln. Nachher bin ich (oder das Forum) noch schuld wenn jemand auf Grund der vermutlich zahlreichen weiteren Fehler Daten absaugt.

    *) Man kann und sollte auch bei runden Klammern Zeilenumbrüche und Einrückungen verwenden. Besonders wenn es davon, so wie hier, 14 Paare gibt.

    1. Danke, Du bist sehr hilfreich.

      Gruß Mike

      1. Danke, Du bist sehr hilfreich.

        Vermutlich weit mehr als Du jetzt noch annimmst.