Frage an JavaScript Entwickler?

Ich entwickel gerade ein Spiel und brauchte gerade bisschen Hilfe von ChatGPT und ich verstehe diese Funktion nicht. Bzw. ich verste die If Abfrage hier nicht. Ich saß gestern schon an dieser Funktion und verstehe es einfach nicht. Ich habe fast geweint.

Ich bin dabei ein Ping Pong Spiel zu verstehen.

 // Event-Listener für Mausbewegungen auf dem Dokument
  document.addEventListener("mousemove", function(event) {
    // Die Mausposition relativ zum Spielfeld abrufen
     const mouseY = event.clientY - gameArea.getBoundingClientRect().top;
    // Begrenzen Sie die Spieler-Schlägerbewegung innerhalb des Spielfelds
    if (mouseY >= 0 && mouseY <= gameArea.clientHeight - playerPaddle.clientHeight ) {
      // Aktualisieren Sie die Position des Spieler-Schlägers basierend auf der Mausposition
      playerPaddle.style.top = mouseY + "px";
    }
  });

------------------------------------------------------------

event.clientY ist der Abstand zwischen Mausposition und oberen Rand der gameArea.

gameArea.getBoundingClientRect().top gibt die Information über die Länge zwischen oberen und unteren Rand der gameArea.

event.clientY - gameArea.getBoundingClientRect().top müsste dann eine negative Zahl, also im Minus Bereich ergeben.

Da verstehe ich nicht, wie die If Abfrage dann funktioniert.

 if (mouseY >= 0 && mouseY <= gameArea.clientHeight - playerPaddle.clientHeight ) {
  
    playerPaddle.style.top = mouseY + "px";
    }

Weil mouseY, also die constante , ist immer kleiner als 0, wenn sie sich innerhalb der gamerArea befindet und da sie kleiner als null ist, wie kann es sein, dass der playerPaddle die Maus verfolgt im Spiel. Also wie kann es sein, dass die If Abfrage funktioniert in dem Fall.

Ich verstehe es einfach nicht, bin ich zu dumm dafür?

HTML, Webseite, JavaScript, Code, Programmiersprache, Webentwicklung
PHP-Login Fehler?

Guten Tag,

Ich habe einen Fehler beim einloggen in mein Loginsystem mit PHP. Ich kann user registrieren, also der username und der password_hash werden richtig in der DB gespeichert. Wenn ich mich aber mit einem bestehenden user der in der Datenbank existiert anmelden möchte, klappt das nicht und es kommt diese Fehlermeldung:

Fehlermeldung Beginn:

Warning: Trying to access array offset on value of type bool in C:\xampp\htdocs\login.php on line 16

Anmeldung fehlgeschlagen, versuche es erneut.

Fehlermeldung Ende.

Mein PHP register Script:

<?php

// Datenbankverbindung

include ('connection.php');

// Benutzereingabe aus Formular

$username = $_POST['username'];

$password = $_POST['password'];

// Das Passwort hashen

$hashedPassword = password_hash($password, PASSWORD_BCRYPT);

// SQL-Abfrage, um den Benutzer in der Datenbank zu speichern

$sql = "INSERT INTO users (username, password_hash) VALUES (?, ?)";

$stmt = $conn->prepare($sql);

$stmt->execute([$username, $hashedPassword]);

// Erfolgsmeldung oder Weiterleitung zur Anmeldeseite

header('Location: login.html');

?>

Mein PHP login Script:

<?php

// Datenbankverbindung

include ('connection.php');

// Benutzereingabe aus Formular

$username = $_POST['username'];

$password = $_POST['password'];

// SQL-Abfrage, um das gespeicherte Passwort abzurufen

$sql = "SELECT password_hash FROM users WHERE username = ?";

$stmt = $conn->prepare($sql);

$stmt->execute([$username]);

$row = $stmt->fetch();

// Überprüfen, ob das eingegebene Passwort korrekt ist

if ($row && password_verify($password, $row['password_hash'])) {

    // Anmeldung erfolgreich, führe die notwendigen Aktionen aus

    // z.B., setze eine Sitzung und leite den Benutzer weiter

    session_start();

    header('Location: index.html');

} else {

    echo "Anmeldung fehlgeschlagen, versuche es erneut.";

}

?>

Wäre cool wenn mir jemand bei diesem Problem weiterhelfen könnte, bin noch nicht so fit in dieser Thematik.

SQL, HTML, Webseite, Datenbank, MySQL, PHP, Programmiersprache, Webentwicklung
Discord Bot Programmieren Fehler?

Hallo Leute ich wollte eine Bot programmieren Wenn man Auf den Button klickt Soll man eine Rolle bekommen Wäre schön wenn es in Unterordner kommt habe es aber nicht hinbekommen

```

const { Client, Intents, MessageButton, MessageActionRow } = require('discord.js');

const welcomeBot = require('./Commands/welcome-bot');

const client = new Client({

intents: [

Intents.FLAGS.GUILDS,

Intents.FLAGS.GUILD_MESSAGES,

Intents.FLAGS.GUILD_MEMBERS,

],

});

client.once('ready', async () => {

console.log('Bot ist bereit.');

const targetChannelId = '1132493981771628610'; // Ersetze durch die ID des Zielkanals

const targetChannel = await client.channels.fetch(targetChannelId);

if (targetChannel && targetChannel.isText()) {

const button = new MessageButton()

.setStyle('SUCCESS')

.setLabel('Verifizieren')

.setCustomId('verify');

const row = new MessageActionRow().addComponents(button);

await targetChannel.send({

content: 'Klicke auf den Button, um dich zu verifizieren:',

components: [row],

});

}

});

client.on('interactionCreate', async (interaction) => {

if (!interaction.isButton()) return;

if (interaction.customId === 'verify' && interaction.user) {

const verifiedRole = interaction.guild.roles.cache.get('1132493981306077190');

if (verifiedRole) {

await interaction.member.roles.add(verifiedRole);

await interaction.reply({

content: 'Du wurdest erfolgreich verifiziert!',

ephemeral: true, // Nur für den Benutzer sichtbar

});

}

}

});

client.on('guildMemberAdd', async (member) => {

welcomeBot(member);

});

client.login('');

```

Fehler Meldung

Node.js v19.9.0

C:\Users\Administrator\Desktop\Discord-Bots\NeonCity>npm install discord.js

up to date, audited 25 packages in 1s

found 0 vulnerabilities

C:\Users\Administrator\Desktop\Discord-Bots\NeonCity>node index.js

C:\Users\Administrator\Desktop\Discord-Bots\NeonCity\index.js:6

Intents.FLAGS.GUILDS,

^

TypeError: Cannot read properties of undefined (reading 'FLAGS')

at Object.<anonymous> (C:\Users\Administrator\Desktop\Discord-Bots\NeonCity\index.js:6:17)

at Module._compile (node:internal/modules/cjs/loader:1275:14)

at Module._extensions..js (node:internal/modules/cjs/loader:1329:10)

at Module.load (node:internal/modules/cjs/loader:1133:32)

at Module._load (node:internal/modules/cjs/loader:972:12)

at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:83:12)

at node:internal/main/run_main_module:23:47

Node.js v19.9.0

Habe Versuch zur löschen neu zur Installieren geht nix

C:\Users\Administrator\Desktop\Discord-Bots\NeonCity>

Linux, HTML, Webseite, JavaScript, Programmiersprache, Raspberry Pi, node.js, Discord, Discord Bot
HTML projekt wie findet ihr die vorarbeit?

html:

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<Header>
</Header>
<div class="input">
<main>
<form action="" method="post">
<h2>Anmeldung</h2>
<input type="email" name="Email" placeholder="Email hier eingeben" required="@" id=""> <br>
<input type="text" name="Benutzer" placeholder="Benutzer hier eingeben" required="A-z" > <br>
<input type="password" name="passwort" placeholder="password hier eingeben " id=""> <br>
<input type="submit" value="Anmelden">
<input type="reset" value="reset">
</form>
</div>
<hr>
<a href="#">Impressum</a>
<a href="#">kontakt</a>
<a href="#">Über uns</a>
</main>
<footer>
</footer>
</body>
</html>

css

body {
font-family: Arial, Helvetica, sans-serif;
color: white;
}
body{
background-color: black;
}
.input {
display: flex;
margin: 700px;
margin-top: 300px;
flex-direction: column;
justify-content: center;
align-items: center;
box-shadow: 1px 1px 3px 3px white;
border-radius: 30px;
height: 300px;
width: 300px;
}
a{
font-family: Arial, Helvetica, sans-serif;
display: flex;
justify-content: center;
align-items: center;
}
a:hover{
color: green;
text-decoration-line: none;
}
input{
padding: 5px;
border-radius: 10px;
}
input[type="submit"] {
font-size: 1.0em; padding: 1px 6px;
font-family: Roboto, sans-serif;
font-weight: 100;
color: teal;
border: 1px solid silver;
background-image: linear-gradient(to top, gainsboro 0%, white 90%);
border-radius: 20px;
}
input[type="reset"] {
font-size: 1.0em; padding: 1px 6px;
font-family: Roboto, sans-serif;
font-weight: 100;
color: teal;
border: 1px solid silver;
background-image: linear-gradient(to top, gainsboro 0%, white 90%);
border-radius: 20px;
}

Bild zu Frage
HTML, Webseite, CSS, HTML5, Programmiersprache, Webdesign, Webentwicklung
Zugriff auf svg Element in HTML gibt immer "null" zurück?

Hallo zusammen,

folgendes Problem:

Ich möchte aus meinem javascript Code zu laufzeit auf meine sonarGrafik.svg zugreifen können um deren Elemente zu manipulieren (oder neue hinzufügen zu können).

So sieht erstmal der ganze HTML Code aus:

<!DOCTYPE html>
<html>
<head>
    <title>Arduino Daten</title>
    <link rel="icon" href="data:,">
    <script src="scripts/script.js"></script>
    <link rel="stylesheet" href="styles/style.css"> 
</head>
<body>
    <object id = "svgObject" data="styles/sonarGrafik.svg" type="image/svg+xml"></object>
</body>
</html>

Der betroffene Teil in meinem javascript Code:

function insertDots(cx, cy) {
    const svgObject = document.getElementById("svgObject");
    console.log(svgObject.contentDocument) // hier erhalte ich in der Console immer "null"


    svgObject.addEventListener("load", function() {
        if (svgObject && svgObject.contentDocument) {
            const sonarSVG = svgObject.contentDocument.getElementById("sonar");
            console.log(sonarSVG);
        }
    });
}

(Die funktion insertDots(cx, cy) wird alle paar sekunden aufgerufen und ich erhalte in der Browser Konsole immer nur null. Dementsprechend ist die if Bedienung darunter auch nie wahr)

In meiner .svg Datei gibt es definitv die id= "sonar":

<svg id="sonar" width="700" height="700" xmlns="http://www.w3.org/2000/svg">
  <rect x="0" y="0" width="100%" height="100%" fill="rgba(128, 128,   128, 0.25)" />
</svg>

So sieht meine Ordnerstruktur aus:

Website
│   SonarVisuallisierung.html
│
├── scripts
│       script.js
│
└── styles
        style.css
        sonarGrafik.svg


Gibt es irgendwo einen Fehler oder eine andere Möglichkeit auf die Elemente der .svg Datei über das script zuzugreifen? (Den Inhalt der .svg will ich ausgelagert lassen und nicht in das HTML einfügen wegen der Übersichtlichkeit)

Danke für alle Lösungsvorschläge.

HTML, Webseite, JavaScript, Code, Programmiersprache
Wieso funktioniert der Code nicht?

binärbaum:

wenn ich das in der main erstelle mit

Tree t1 = new Tree();
t1.add(9);
t1.add(1);
t1.add(23);
und dann t1.root ausprinte funktinoiert es, aber t1.root.left liefert null, also es gibt nen fehler, wieso aber?

hat es was damit zu tun " parent = new TNode(data);" ?ich übergeben den linken knoten der wurzel und das ist jetzt parent, und dann weise ich parent neu zu also ich weise den linken knoten der wurzel neu zu, wieso geht das aber nicht?


public class Tree {
    TNode root;


    Tree(){
        this.root = null;
    }


    public void add(int data){
        if(root == null){
            root = new TNode(data);
        }else{
            if(data < this.root.data){
                add(data, root.left);
                System.out.println("miosty");
            }else {
                add(data, root.right);
            }
        }
    }
     public void add(int data, TNode parent){
        if(parent == null){
            System.out.println("Zu");
           parent = new TNode(data);
        }else{
            if(data < parent.data){
                add(data, parent.left);
            } else {
                add(data, parent.right);
            }
        }
    }
}
HTML, Webseite, Java, JavaScript, Array, Code, PHP, Programmiersprache, Python, Webentwicklung, Algorithmus

Meistgelesene Fragen zum Thema HTML