Werte aus Datenbank anzeigen mit JS?

Hallo,

ich habe folgenden Code für mein Formular:

<form action="/message1" method="post">
  <div class="input">
    <input type="text" placeholder="Chat" id="input" name="input1">
  </div>
  <div class="send">
    <button type="submit" onclick="message();">Send</button>
  </div>
</form>

Nun noch das JS onclick-Event:

function message() {
  input = document.getElementById("input").value;
  count++;

  if (input == "") {
    alert("please type your message!");
  }
  else {
    if (count % 2 == 0) {
      let newDiv = document.createElement("div");
      newDiv.id = "divMessage";
      newDiv.style.display = "flex";
      newDiv.style.justifyContent = "flex-start";
      newDiv.style.margin = "45px";
      newDiv.style.backgroundColor = "#303032";
      newDiv.style.borderRadius = "10px";
      newDiv.style.padding = "10px";
      newDiv.style.marginTop = "80px";
      newDiv.style.color = "white";
      newDiv.style.marginBottom = "80px";
      newDiv.style.width = "120px";
      newDiv.innerHTML = input;

      let chatMessages = document.querySelector(".chat-messages");
      chatMessages.appendChild(newDiv);
    }

Und nun noch das Reinschreiben mit node.js in die MariaDB-Datenbank:

app.post('/message1', async (req, res) => {
  const input = req.body.input1;
  console.log(input);
  const conn = await pool.getConnection();
  await conn.query(`INSERT INTO test.handy (id, name) VALUES (2, '${input}')`);
  conn.release();
});

Nun möchte ich aber, das, was in die Datenbank geschrieben wurde, beim Aktualisieren der Seite immer noch im "newDiv" anzeigen. Wie geht das?

LG

HTML, Webseite, Datenbank, Programmiersprache, Webentwicklung
Wie kann der eingegebene Eintrag nach Bestätigung in die Datenbank gespeichert werden?

Hallo,

mit folgendem Code scheint es nicht zu funktionieren, dass die Eingabe nach Bestätigungsfrage nicht in der Datenbank aktualisiert. Warum? Bin neu in PHP
Danke!

 if ($name_select && $name_select !== $_POST["name"]) {

    // Meldung ausgeben, dass bereits ein Eintrag vorhanden ist

    echo "Es ist bereits ein Eintrag in der Spalte $column_name vorhanden. Möchten Sie den Eintrag wirklich überschreiben?";

    echo "<form action='putzgruppen.php' method='post'>";

    echo "<input type='hidden' name='name' value='" . $_POST["name"] . "'>";

    echo "<input type='hidden' name='column_name' value='" . $column_name . "'>";

    echo "<input type='submit' name='confirm' value='Ja'>";

    echo "<input type='submit' name='cancel' value='Nein'>";

    echo "</form>";

  } else {

    if ($count == 0) {

      // Einfügen des Namens in die Datenbank

      $name = $_POST["name"];

      $sql = "INSERT INTO Putzgruppe ($column_name) VALUES ('$name')";

      if (mysqli_query($conn, $sql)) {

        echo "Daten erfolgreich gespeichert.";

        header("Location: putzgruppen.php"); // Weiterleitung zur Datenbankseite

        exit(); // Beenden des Skripts, um ein weiteres Ausführen zu verhindern

      } else {

        echo "Fehler: " . $sql . "<br>" . mysqli_error($conn);

      }

    } else {

      if(isset($_POST['confirm'])) {

        // Aktualisierung des bestehenden Eintrags

        $name = $_POST["name"];

        $column_name = $_POST["column_name"];

        $sql = "UPDATE Putzgruppe SET $column_name='$name' WHERE $column_name='$name_select'";

        if (mysqli_query($conn, $sql)) {

          echo "Daten erfolgreich aktualisiert.";

          header("Location: putzgruppen.php"); // Weiterleitung zur Datenbankseite

          exit(); // Beenden des Skripts, um ein weiteres Ausführen zu verhindern

        } else {

          echo "Fehler: " . $sql . "<br>" . mysqli_error($conn);

        }

      }

    }

  }

} else {

  echo "Das Eingabefeld ist leer.";

}

Datenbank, MySQL, PHP
mehrdemensionales Array aus Datenbank auslesen mit php?

Hallo ich programmiere mit einem kleinem Team eine Onboarding Website für Mitarbeiter. Allerdings haben wir ein Problem beim auslesen unserer Datenbank. wir haben uns mit dem fronted Team abgesprochen dass wir die Daten per Array übergeben. Nun haben wir uns die daten per Array ausgeben lassen, per foreach schleife ausgeben lassen und zurück in mehrdemsionales Array gepackt. Allerdings können wir dieses nur per var_dump ausgeben und nicht mithilfe einer foreach Schleife normal per echo.

Wie können wir das umbauen?

Hier der aktuelle Code:

<?php 


    function getdata() {
    $pdo = new PDO('mysql:host=localhost; dbname=t-systems', 'root', '', [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
    ]);
    $stmt = $pdo->prepare('SELECT * FROM `user`');
    $stmt->execute();
    $results = $stmt->fetchAll(PDO::FETCH_ASSOC);

    foreach ($results as $result) {
        $Ort = $result['Ort Name'];
        $ID_User = $result['ID'];
        $Vorname = $result['Vorname'];
        $Nachname = $result['Nachname'];
        $Telefonnummer = $result['Telefonnummer'];
        $mail = $result['Email'];
        $PLZ = $result['Plz'];
        $Straße = $result['Strasse'];
        $Hausnummer = $result['Hausnummer'];

        $userdata[] = [$Ort, $ID_User, $Vorname, $Nachname, $Telefonnummer, $mail, $PLZ, $Straße, $Hausnummer];
    }
       var_dump($userdata);

    }
Danke fürs weiterhelfen
Array, Datenbank, MySQL, PHP

Meistgelesene Beiträge zum Thema Datenbank