JavaScript – die neusten Beiträge

Node.js: Werte an HTML Datei übergeben?

Ich habe etwas mit Node.js angefangen und komme einfach nicht mehr weiter. Ich habe das Server erstellen usw. gut verstanden, aber jetzt komme ich nicht mehr weiter. Es kann sein, dass das total einfach ist.

Ich habe anfangs einen Server erstellt. Nun habe ich eine MySQL-Verbindung hergestellt (was auch funktioniert) und mit dem SELECT-Befehl Daten daraus bekommen. Nur stellt sich mir nun einfach die Frage, wie zum Teufel ich den Wert in meine HTML Datei bekomme, um sie auszugeben.

app.js:

var express = require("express");
var app = express();
var mysql = require("mysql");
var con = mysql.createConnection({
  host: "localhost",
  user: "root",
  password: "",
  database: "test"
});

con.connect(function(err) {
  if (err) throw err;
  console.log("Connected to Database!");
});

app.listen(8080, function() {
  console.log("Server is running!");
});

con.query("SELECT id, Zahl FROM test", function(err, result, fields) {
  if (err) throw err;
  console.log(result);
});

app.get("/", function(req, res) {
  res.sendFile(__dirname + "/index.html");
});

Also, wie gesagt, bekomme ich in der Konsole "result" ausgegeben. Aber wie bekomme ich das jetzt z.B. in einen div in meiner index.html?

Und noch eine kleine Nebenfrage: Ist das so richtig, wenn ich einfach andere Seiten so

app.get("/", function(req, res) {
  res.sendFile(__dirname + "/index.html");
});

app.get("/test", function(req, res) {
  res.sendFile(__dirname + "/test.html");
});

erzeugen kann?

Also wenn ich einfach nur mehrere HTML Dateien haben möchte.

Und noch eine kleine Frage: Ich kenne es so, dass man in PHP eigentlich immer MySQL-Datenbanken verwendet. In Node.js geht das ja auch, aber gibt es da auch eine Art vorgesehene Datenbank?

Die kleinen Fragen sind nebensächlich, die erste Frage ist mir erst einmal am wichtigsten. Aber wer es weiß ...

MfG

Tom

Computer, HTML, programmieren, JavaScript, Webentwicklung, node.js

CSS/Javascript: mit :hover ein anderes Element sichtbar machen?

Hallo ihr lieben,

ich hänge gerade an einem Programmierproblem. Ich möchte versuchen Banner Mapping zu programmieren und finde meinen (vermutlich dummen kleinen)Fehler nicht.

Hier der "bisherige" Code:

<html>

<head><title> Test :)</title>

<script type="text/javascript>

<script src= "https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>

<script>

jQuery('#hoverdiv').hoverdiv( 

  function() {$('#Kindelement').show();},

  function() {$('#Kindelement').hide();}

);

</script>

<style>

.hover

{

  background-color: red;

  z-index: 1;

}

.Kindelement

{

  position: absolute;

  top:0;

  background-color: blue;

  -moz-transition: all 0.5s ease 0s;

  -webkit-transition: all 0.5s ease 0s;

  transition: all 0.5s ease 0s;

  opacity: 0;

  z-index: 2;

   

}

.hoverdiv

{

  position: relative;

}

.hoverdiv:hover + .Kindelement

{

  opacity: 1;

}​

</style>

</head>

<body>

<div id="hoverdiv" style="background: grey; 

color: white; 

border-radius: 50px !important; 

font-family: &quot;Helvetica Neue&quot;, 

Arial, sans-serif !important; 

float: none !important;" ;>

<a>+</a>

<div id="Kindelement" 

style="color: white; 

background: grey; 

position: absolute;

top: 770px !important; 

 opacity: 0;">

<a href="link" style="color: white; background: grey">Name</a>

</div>

 </div>

 

 

</body>

</html>

Habe sehr viel probiert, aber finde keine Lösung in Google :( bei <a> ist der link natprlich ein richtiger link - nur aus Datenschutz zensiert :)

Es soll auf das hoverdiv gehovert werden und dadurch das Kindelement angezeigt werden - wenn man wieder mit der Maus davon runter geht soll es wieder verschwinden..

Dankeschön schonmal!

Computer, HTML, programmieren, CSS, JavaScript

CSS / JavaScript: Hilfe bei Leaflet-Integration?

Hallo Leute,

ich brauche Hilfe bei dieser Arbeit.

1. Es sollen zwei Karten nebeneinander sein. Jedoch soll die rechte Karte eine Here-Map sein. Wie baue ich das in den Code ein (siehe unten)?

Sie müssen http://ivansanchez.gitlab.io/Leaflet.TileLayer.HERE/leaflet-tilelayer-here.js in einem <script>-Tag laden. Danach müsste es mit sowas hier gehen:
L.tileLayer.here({
  appId: 'ViVS62MmsdTJSzwXMlHb',
  appCode: 'bsODmSCzkVqEMR8TnGPHdw'
}).addTo(map);
Statt addTo(map) kommt natürlich der Name Ihrer rechten Karte hin.
appId und appCode sind hier aus dem Beispiel von Ivan Sanchez http://ivansanchez.gitlab.io/Leaflet.TileLayer.HERE/demo.html

________________

2. Außerdem soll die zweite Karte sozusagen synchron/parallel mit der linken Karte verlaufen:

Sie müssen, wenn der Benutzer in der linken Karte zoomt oder sie verschiebt, die rechte Karte aktualisieren. Dazu müssen Sie eine Funktion schreiben, die aufgerufen wird, wenn auf der linken Karte das "zoomend" oder "moveend"-Ereignis auftritt.
Also etwa
map1.on("zoomend", meine_funktion);
und dann in der meine_funktion können Sie auf der rechten Karte "setBounds" aufrufen, um die rechte Karte zu verschieben/zu zoomen. Das "setBounds" muss dabei den aktuellen Ausschnitt der linken Karte übergeben bekommen (getBounds).

_________________________________________________

<html>
  <head>
    <link rel="stylesheet" href="https: //unpkg.com/leaflet@1.4.0/dist/leaflet.css"></link>
    <script src="https: //unpkg.com/leaflet@1.4.0/dist/leaflet.js"></script>
    <script src="http: //unpkg.com/leaflet@1.3.1/dist/leaflet.js"></script>
    <script>
      function initMaps() {
        map = new L.map('meine_map');
        L.tileLayer('https: //{s}.tile.openstreetmap.org/{z}/{x}/{y}.png').addTo(map);
        let karlsruhe = new L.LatLng(49, 8.4);
        map.setView(karlsruhe, 12);
        map1 = new L.map('meine_map1');
        L.tileLayer('http: //{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png').addTo(map1);
        map1.setView(karlsruhe, 12);

        document.getElementById("suchen").addEventListener("click", suchen);
      }

      async function suchen() {
        let url = new URL('https: //nominatim.openstreetmap.org/search');
        url.searchParams.append('format', 'json');
        url.searchParams.append('q', document.getElementById("ort").value);

        let response = await fetch(url);
        let json = await response.json();
        let box = json[0].boundingbox;

        map.fitBounds([ [ box[0],box[2] ], [ box[1],box[3] ] ]);
        map1.fitBounds([ [ box[0],box[2] ], [ box[1],box[3] ] ]);
      }
    </script>
  </head>
  <body onLoad="initMaps()">
    <div id="meine_map" style="height: 360px; width: 360px;"></div>
    <div id="meine_map1" style="position: absolute; top: 9px; left: 375px; height: 360px; width: 360px;"></div>
    <input type="text" id="ort">
    <button id="suchen">Suchen</button>
  </body>

Anmerkung: Damit der GF-Editor die URLs nicht verfälscht, wurde im Protokoll stets ein Leerzeichen hinzugefügt.

Ich danke euch für die Hilfe im Voraus!

LG

HTML, programmieren, CSS, Java, JavaScript, Informatik, Informatiker

Taschenrechnr mit Typescript erstellen?

Hallo, wir sollten für unseren Kurs einen Taschenrechner auf unserer Webseite erstellen. Diese sollte erst + - * und / errechnen können. Dies habe ich so gemacht:

<form name="Rechner">
 <table border="10" cellpadding="10" bgcolor="#E0E0E0">
   <tr>
     <td bgcolor="#C0C0C0"><input name="Display" size="30" maxlength="30"></td>
   </tr>
   <tr>
     <td>
  <table>
       <tr>
         <td width="50"><input type="button" value="  7  " onclick="Hinzufuegen('7')"></td>
         <td width="50"><input type="button" value="  8  " onclick="Hinzufuegen('8')"></td>
         <td width="70"><input type="button" value="  9  " onclick="Hinzufuegen('9')"></td>
         <td width="50"><input type="button" value="  +   " onclick="Hinzufuegen('+')"></td>
       </tr>
       <tr>
         <td width="50"><input type="button" value="  4  " onclick="Hinzufuegen('4')"></td>
         <td width="50"><input type="button" value="  5  " onclick="Hinzufuegen('5')"></td>
         <td width="70"><input type="button" value="  6  " onclick="Hinzufuegen('6')"></td>
         <td width="50"><input type="button" value="   -   " onclick="Hinzufuegen('-')"></td>
       </tr>
       <tr>
         <td width="50"><input type="button" value="  1  " onclick="Hinzufuegen('1')"></td>
         <td width="50"><input type="button" value="  2  " onclick="Hinzufuegen('2')"></td>
         <td width="70"><input type="button" value="  3  " onclick="Hinzufuegen('3')"></td>
         <td width="50"><input type="button" value="      " onclick="Hinzufuegen('')"></td>
       </tr>
       <tr>
         <td width="50"><input type="button" value="   =   " onclick="Ergebnis()"></td>
         <td width="50"><input type="button" value="  0  " onclick="Hinzufuegen('0')"></td>
         <td width="70"><input type="button" value="  .   " onclick="Hinzufuegen('.')"></td>
         <td width="50"><input type="button" value="   /   " onclick="Hinzufuegen('/')"></td>
       </tr>
       <tr>
         <td width="50"><input type="button" value="Wurzel " onclick="Sonderfunktion('sqrt')"></td>
         <td width="50"><input type="button" value=" pow " onclick="Sonderfunktion('pow')"></td>
         <td width="70"><input type="button" value=" log " onclick="Sonderfunktion('log')"></td>
         <td width="50"><input type="reset" value="  C  "></td>
       </tr>
       <tr>
     </table>
     </td>
   </tr>
 </table>
</form>

Jetzt sollen wir den Taschenrechner erweitern und Flächeninhalt; Umfang(Rechteck),Potenzieren,Fakultät, Modulo und Dezimal Dual hinzufügen.

Die Buttons kann ich erstellen, aber wie erstelle ich die dazugehörige scripts? Ich hoffe jemand kann mir helfen. :(

HTML, IT, Webseite, programmieren, JavaScript, Taschenrechner, TypeScript

Node.js/Express - req.body funktioniert nicht?

Ich möchte in meiner app.js-Datei Werte aus meiner HTML-Datei benutzen. In meiner HTML-Datei ist ein TextFeld namens "search". Dazu will ich in app.js

var searchText = req.body.search

verwenden, um den Wert des Feldes zu bekommen. Das klappt aber nicht!

Hier mein app.js-Code:

var express = require("express");
var pg = require("pg");
var bodyParser = require("body-parser");
var CON_STRING = process.env.DB_CON_STRING;

if (CON_STRING == undefined) {
  console.log("Error: Environment variable DB_CON_STRING not set!");
  process.exit(1);
}

pg.defaults.ssl = true;
var dbClient = new pg.Client(CON_STRING);
dbClient.connect();

var urlencodedParser = bodyParser.urlencoded({ extended: false });
const PORT = 80;

var app = express();
app.set("views", "views");
app.set("view engine", "pug");
app.get("/search", urlencodedParser, function (req, res) {
  var searchText = req.body.source;
  console.log(searchText); //HIER IST DER FEHLER: Es spuckt "undefined" aus!

  dbClient.query("SELECT * FROM book LIMIT 50 ", function (dbError, dbItemsResponse) {
    res.render("index", {
      BookList: dbItemsResponse.rows
    });
  });
});
app.listen(PORT, function () {
  console.log(App listening on Port ${PORT});
});

Das

console.log(searchText)

gibt mir immer undefined zurück. Wenn ich in der HTML-Datei über ein Script den Wert vom Textfeld ausgebe, dann ist der das, was da drinnen steht. Nur mit req.body scheine ich nicht darauf zugreifen zu können. Ich bekomme immer undefined.

Was mache ich falsch? Wie kann ich es beheben? Hat jemand eine Idee?

Computer, Technik, Programm, HTML, JavaScript, Express, Technologie, Parsen, node.js, Spiele und Gaming

HTML|JS|CSS - Hinter dem DIV den Hintergrund unschärfen?

Hallo,

ich möchte gerne die restliche Seite unscharf haben, wenn mein DIV-Formular offen ist. Wenn ich mein DIV aber schließe "Abbrechen", ist die ganze Seite weg. Ich vermute mal das es mit dem anzeigen und verstecken vom "overlay" DIV zusammenhängt, welcher auch die Unschärfe rein bringt.

HTML Part:

<html>
<header>
    <link rel="stylesheet" href="css/style.css">
    <script language="javascript" type="text/javascript" src="js/script.js"></script>
    <script type="text/javashttps://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.jsquery.min.js"></script>
</header>

<body onload="startTime()"> <div id="overlay">

<div class="bsr"> <b> Besprechungsraum: </b> RR </div> <br>

<!-- --> <div id="ajaxdiv"> </div> <!-- -->

<br><br>

<div align="center" id="reservierungdiv"> <a href="#" class="btn_reservierung" onclick="openForm()">Reservierung</a> </div>

<?php include "connect/users.php"; ?>

</div> </body> </html>

CSS Part:

body {
    background-color: whitesmoke;
    /overflow: hidden;/
    z-index: 0;
}
#overlay{
    /display: none;/
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .5;
    z-index: 3;
    filter: blur(2px);
    visibility: hidden;
}

JS Part:

function openForm() {
    document.getElementById("myForm").style.display = "block";
    document.getElementById("overlay").style.display = "block"; <---
    startTimer();
}

function hideDiv() {
    document.getElementById('myForm2').reset();
    //$("#client")[0].reset();
    document.getElementById('myForm').style.display = 'none';
    document.getElementById("overlay").style.display = "none"; <---
}

Computer, HTML, programmieren, CSS, JavaScript, Webentwicklung

Discord.js Herausfinden ob User in einen Voice Channel ist / Musik in Channels Spielen?

Hallo, ich versuche grade einen Bot zu Programmieren, der herausfindet ob ein User in einem Channel ist und dann direkt reagiert.

Was soll er machen:

  • Erkennen, ob ein User in einem Channel ist
  • -> Wenn ja: In einen Channel gehen und Musik spielen

Was ich bis jetzt als Code habe. Leider geht dieser nicht und ich frage mich, ob es auch anders bzw. einfacher geht:

client.on('voiceStateUpdate', (newmember)=> {
    let newvoice = newmember.voiceChannel;
    // let warteChannel = member.voiceChannel.get(channel[ServiceWorkerRegistration.id][warteChannel]);
        if (newvoice === 54478085972XXX) {
        let annChannel = client.guilds.voiceChannel.get(54493151978XXXXXX);
        annChttps://www.youtube.com/XXX);44XXXXXXX, https://www.youtube.com/XXX);
        };
});

Hier zu sagen ist, dass annChannel der Channel ist, in den der Bot gehen soll und warteChannel der Channel ist, in dem der Bot User finden soll, also testen soll, ob in diesem Channel User sind.

Aktuell, wenn man diesen Code nun laufen lässt, gibt es keine Fehlermeldung, aber es passiert leider auch nichts.

Ich würde sehr freuen, wenn mir einer Erklären könnte, wie man einfach nun herausfinden kann in JAVASCRIPT, ob ein User in einem Voice Channel ist und wie man einfach einen Bot ein YouTube Video abspielen lässt.

Danke schon einmal im Voraus. PartyGamerXXL

Computer, programmieren, JavaScript, Discord Server, Discord Bot, Discord.js

Wie ladet man ein Blob-URL-Video herunter?

Ich möchte ein Video herunterladen, dessen URL nicht einfach mp4-Datei ist. Zum Beispiel "blob:https://www.youtube.com/e9c3655f-041a-43e8-8213-7aabf1231246". Kennt sich irgendjemand da aus und weiß wie das geht beziehungsweise ob das überhaupt möglich ist?

PS: Ich kann nicht programmieren

Computer, Musik, Internet, Technik, Programm, HTML, programmieren, Java, JavaScript, URL, Informatik, Technologie

Meistgelesene Beiträge zum Thema JavaScript