Login verbessern mit AJAX/PHP?

Ich habe ein Login gebaut. Jenen sollen wir nun ausschließlich mit AJAX verbessern. (Wir dürfen dabei nicht sowas wie JQUERY verwenden. Das wissen fehlt uns aber dafür an meisten. Vielleicht kann jemand mir dabei helfen mein Login umzubauen und zu verstehen was ich mache.

Mein Login-Quelltext:

<?php
$pdo = new PDO('mysql:host=localhost;dbname=phptest', 'root', '');

if(isset($_GET['login'])) {
  $email = $_POST['Email'];
  $passwort = $_POST['Passwort'];

  $statement = $pdo->prepare("SELECT * FROM login WHERE Email = :Email");
  $result = $statement->execute(array('Email' => $email));
  $user = $statement->fetch();

  //Überprüfung des Passworts
  if ($user !== false && password_verify($passwort, $user['Passwort'])) {
    $_SESSION['userid'] = $user['ID'];
    die('Login erfolgreich. Weiter zu <a href="index.php?site=Startseite">internen Bereich</a>');
  } else {
    $errorMessage = "E-Mail oder Passwort war ungültig<br>";
  }

}
?>
<!DOCTYPE html>
<html>
<head>
  <title>Login</title>
</head>
<body>

<?php
if(isset($errorMessage)) {
  echo $errorMessage;
}
?>

<form action="Loginseite.php?login=1" method="post">
  E-Mail:<br>
  <input type="email" size="40" maxlength="250" name="Email" required><br><br>

  Dein Passwort:<br>
  <input type="password" size="40" maxlength="250" name="Passwort" required><br>

  <input type="submit" value="Login">
</form>
</body>
</html>
Computer, HTML, programmieren, JavaScript, AJAX, PHP, Webdesign
Hilfe, ich habe mein iPad falsch eingestellt?

Hey Leute, erstmal vielen Dank, dass ihr mir helfen wollt.

Ich habe ein gebrauchtes iPad zu meinem Geburtstag geschenkt bekommen. Beim Kuchen essen, meinte mein großer Bruder, dass er mir unbedingt etwas unglaubliches auf meinem iPad zeigen muss (zu dem Zeitpunkt hatte ich mich noch nicht angemeldet oder so), damit er es mir aber zeigen konnte, musste das einloggen extrem schnell gehen und ich habe mich nicht gleich über den Schnellstart mit meinem iPhone angemeldet, weshalb keinerlei Apps,… übernommen wurden. (Schlussendlich wollte er nur, dass ich sein WLAN lösche und nicht weiter über ihn ins Internet gehen kann). Als ich dann endlich etwas Zeit hatte, um mich mit dem iPad auseinander zu setzten, war ich so verunsichert und unglücklich, weil ich Angst hatte in der Schnelle etwas falsch gemacht zu haben, dass ich mich kurzerhand dazu entschieden habe, mein iPad wieder zurückzusetzen und mich erneut anzumelden, dieses Mal dann über den Start mit meinem Handy. (Das zur Vorgeschichte)

Nun meine Fragen…

  1. Das Einrichten hat toll geklappt und alle Apps wurden übernommen, ich musste mich nichtmal überall neu Einloggen, nur steht jetzt bei den Einstellungen und meiner Apple ID nicht mehr wie zuvor „iPad von (mein Name)“ sondern iPhone von (mein Name) (2)“ wie kann ich das wieder zum Anfänglichen ändern, also nur die Bezeichnung?
  2. Falls ich irgendwann ein neues iPad bekomme, existiert dann mein erster Account noch? Ich will eigentlich nur den, den ich jetzt benutze, haben.
  3. Auf einer meiner Apps, die ich sowohl auf meinem iPad wie auch meinem Handy benutze, werden die Daten nicht synchronisiert, ist das mein Fehler? Ganz am Anfang ging es ohne Probleme auch bei dieser App nur bei fortschreitender Benutzung nicht.
  4. Ich habe heute und gestern eine Nachricht bekommen, dass meine Apple ID auf einem neuen Gerät eingegeben wurde, wie zB. einer Apple Watch, bei meiner habe ich mich aber nicht erneut angemeldet. Bei meiner Apple ID werden unten aber nur die Geräte angezeigt, die auch mir gehören, bei den angemeldeten Geräten.
  5. Wie bekomme ich es hin, dass der Batteriezustand von meiner Uhr und meinem Handy auch auf meinem iPad angezeigt wird?
  6. Gestern konnte ich den ganzen Tag meine MobileDaten nicht nutzen, steht es damit in Verbindung?

Ich würde mich sehr über Ihre Hilfe freuen. Vielen Dank und ganz liebe Grüße ^^

Apple, Computer, iPhone, Technik, iPad, Apple ID
Welche Fritzbox Mesh Kombination in meinem Fall?

Guten Tag,

in einiger Zeit werden wir umziehen und dann im neuen Mehrfamilienhaus zwei Wohnungen mieten. Dabei soll im Idealfall mit einem Internet-Tarif beide Wohnungen abgedeckt werden. Eine Lan-Verbindungen zwischen beiden Wohnungen ist momentan ausgeschlossen.

Die Zeichnung stellt die Situation ungefähr da(man stelle sich in der Mitte noch Treppen vor). Der Fritzbox Master wird in der zweiten Etage nähe der Eingangstür aufgestellt. Der Repeater wird dann in der ersten Etage nah der Tür platziert.

Momentan habe ich eine 7530 AX im Einsatz und eine 7530 liegt noch irgendwo im Schrank. Mein eigentlicher Gedanke war es mir eine 7590 AX zuzulegen (höhere Reichweite) und den 7530 AX als Repeater zu benutzten, da schon vorhanden und dann auch Wifi 6 fähig. Der normale 7530 sollte verkauft werden. Nun stellt sich aber heraus, dass der 7530 AX nicht Mesh/repeater fähig ist(zumindest nicht über WLAN).

Nun sehe ich hier 2 Optionen:

  1. 7530 AX als Master und die normale 7530 als Repeater. Hier macht mir die Reichweite einwenig sorgen.
  2. Wie geplant eine 7590 AX besorgen, den 7530 AX und 7530 verkaufen, und einen Fritzbox Repeater 1200x kaufen.

Die Frage die sich mir halt stellt, ob ich überhaupt die hohe Reichweite der 7590 brauche, wenn am anderen Ende sowieso ein Repeater ist.

Ich kann leider noch nichts testen, da ich noch nicht in den Wohnungen bin.

Für andere Vorschläge bin ich offen!

Bild zum Beitrag
Computer, WLAN, Heimnetzwerk, LAN, Router, mesh, Mesh-Netzwerk, FRITZ!Box 7590
C++: multiple definition...?

Hallo, ich habe in C++ einen Header erstellt, aber bei der Complierung kommt immer diese Fehlermeldung:

C:\Users\Admin\AppData\Local\Temp\ccdaLGOT.o:lexer.cpp:(.text+0x111): undefined reference to `Token::content[abi:cxx11]() const'
...(Zu lang zum abschicken)
collect2.exe: error: ld returned 1 exit status

Kann mir jemand sagen was der Fehler ist und wie ich ihn behebe?

token.hpp:

#ifndef TOKEN_HPP_
#define TOKEN_HPP_

#include <string>

class Token {
public:
    enum class Type {
        STRING,
        NUMBER,
        BOOLEAN,
        IDENTIFIER,
        EQUAL,
        PLUS,
        MINUS,
        TIMES,
        DIVIDE,
        LESS_THAN,
        GREATER_THAN,
        COMMENT,
        DOT,
        COMMA,
        SEMICOLON,
        CURLY_BRACKET_RIGHT,
        CURLY_BRACKET_LEFT,
        APOSTROPHE,
        COLON,
        UNEXPECTED
    };

    Token                (Type type)              noexcept;

    Type type            ()                       const noexcept;

    bool is                (Type type)               const noexcept;

    bool is_not            (Type type)               const noexcept;

    std::string content ()                       const noexcept;

    void change_content (std::string content)  const noexcept;

    void add_to_content (std::string content)  const noexcept;

    void clear_content  ()                       const noexcept;

    void change_type    (Type type)            const noexcept;

private:
    Type m_type;
    std::string m_content;
};

#endif

token.cpp:

#include "token.hpp"

#include <string>

Token::Token(Type type) noexcept : m_type{type} {};

Token::Type Token::type() const noexcept {
    return m_type;
}

bool Token::is(Type type) const noexcept {
    return m_type == type;
}

bool Token::is_not(Type type) const noexcept {
    return m_type != type;
}

std::string Token::content() const noexcept {
    return m_content;
}

void Token::change_content(std::string content) const noexcept {
    m_content = content;
}

void Token::add_to_content(std::string content) const noexcept {
    m_content = m_content + content;
}

void Token::clear_content() const noexcept {
    m_content.clear(); //Die clear Funktion geht auch nicht
}

void Token::change_type(Type type) const noexcept {
    m_type = type;
}

Ich hoffe jemand kann mir dabei helfen!

LG

PC, Computer, Software, programmieren, compiler, Cplusplus, CPP, development, Informatik, Informatiker, Programmiersprache, C (Programmiersprache), Cpp Programierung

Meistgelesene Beiträge zum Thema Computer