Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 43.429
» Neuestes Mitglied: rodrurofyi
» Foren-Themen: 505
» Foren-Beiträge: 2.094

Komplettstatistiken

Benutzer Online
Momentan sind 169 Benutzer online
» 0 Mitglieder
» 167 Gäste
Bing, Google

Aktive Themen
div(tabelle) neugeladen b...
Forum: Javascript
Letzter Beitrag: Sempervivum
Vor 5 Stunden
» Antworten: 1
» Ansichten: 13
Ajax Abfrage
Forum: Php
Letzter Beitrag: taxlegit24
Heute, 06:43
» Antworten: 3
» Ansichten: 354
Probleme Firebase Databas...
Forum: Javascript
Letzter Beitrag: PrimoCenturio
22.04.2024, 14:15
» Antworten: 4
» Ansichten: 118
Verbindung von Entscheidu...
Forum: Javascript
Letzter Beitrag: Ashriel
16.04.2024, 11:02
» Antworten: 3
» Ansichten: 106
Neu laden ohne Scrolling
Forum: Javascript
Letzter Beitrag: Tom
16.04.2024, 08:48
» Antworten: 0
» Ansichten: 35
Formularfelder addieren u...
Forum: Javascript
Letzter Beitrag: heena123
16.04.2024, 08:03
» Antworten: 17
» Ansichten: 370
FMOVIES
Forum: Javascript
Letzter Beitrag: xomanig690
16.04.2024, 07:07
» Antworten: 0
» Ansichten: 40
Spam gelöscht
Forum: Ankündigungen,Neuigkeiten
Letzter Beitrag: rzscout
10.04.2024, 23:37
» Antworten: 0
» Ansichten: 176
Reihenfolge der Karten
Forum: Brauche Javascript / Userscript
Letzter Beitrag: hardee
10.04.2024, 17:54
» Antworten: 4
» Ansichten: 118
Variable aus Funktion zur...
Forum: Javascript
Letzter Beitrag: Kai_Behncke
27.03.2024, 14:58
» Antworten: 2
» Ansichten: 131

  über "Fetch" Json Array/Object auswerten
Geschrieben von: mat-sche - 19.01.2024, 16:59 - Forum: Javascript - Antworten (36)

Liebe Forengemeinde,

ich versuche schon die ganze Zeit eine Http request von einer Steckdose mit Tasmota auszuwerten. Über "http://192.168.188.141/cm?cmnd=status%208" sendet die Steckdose die Daten zum Status 8:

{"StatusSNS":{"Time":"2024-01-19T12:58:34","ANALOG":{"Temperature":20.9},"ENERGY":{"TotalStartTime":"2023-12-29T14:09:41","Total":0.009,"Yesterday":0.000,"Today":0.000,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":232,"Current":0.000},"TempUnit":"C"}}

Nun versuchte ich die Daten über:

Code:
            fetch('http://192.168.188.141/cm?cmnd=status%208').then(function(response) {
                response.text().then(function(text) {
                    console.log ("Fetchdaten");
                    console.log (JSON.parse(text));             
                    JSON.parse(text, function (key, value) {
                        if (key == "Time") { document.getElementById('Temp').innerHTML = value; }

                    });
                   /*
                    let lokal = Status.find (lokal => lokal.ENERGY === "Total");
                    console.log ("das ist ein Tset");
                    console.log (lokal);
                    */
                });

auszulesen.
Unter Firefox und dem Entwicklerwerkzeug wird mir angezeigt, die Daten ein/mehrer Object - Daten beinhalten. wie kann ich nun in JS diese Daten so bearbeiten, dass ich sie mir über
Code:
if (key == "ENERGY") document.getElementById('Temp').innerHTML = value;

in meine Webseite holen kann?

Leider kenn ich mich nicht in JS so gut aus und lerne noch...

Vielen DAnk und schönes WE!
MAT

Drucke diesen Beitrag

  Parameter mit htaccess
Geschrieben von: IntrepidKlasse - 17.01.2024, 15:02 - Forum: .htaccess - Keine Antworten

Hallo, ich hoffe ich bin hier richtig. Ich habe folgende Seitenstruktur mit mod Rewrite:

- account.php (http://domnain.de/account/)
- admin.php (http://domain.de/account/admin/

htaccess

Code:
RewriteRule ^account/?$ account.php [L]
RewriteRule ^account/admin/?$ account.php?suk=admin&person=$2 [L]

Code:
[b]account.php[/b]
[code]<?php
$seitenVAR = @$_GET['suk'];
switch ($seitenVAR) {
case "":
    require "include/startseite.php";
    break;
case "admin":
    require "include/admin.php";
    break;



per include wird nun die Inhaltsseite startseite oder admin durch php angezeigt.
jetzt habe ich das Problem, dass verzweifelt versuche einen Parameter an domain.de/account/admin/?person=test zu übergeben.

domain.de/account/admin/?person=erfolgreich << kommt aber nicht an, was mache ich falsch? (Kontrolle mit print_r($GLOBALS)Wink

kann mir jemand helfen ?

Drucke diesen Beitrag

  Warten bis image geladen ist
Geschrieben von: mike64 - 17.01.2024, 14:19 - Forum: Javascript - Antworten (6)

Hallo

es sollte einfach sein, aber es ist wohl ein bekanntes Problem mit dem asynchronen Laden eines images

Mein Problem ist, daß ich ähnlich einer VCL Objekte erzeuge, die in Canvas grafisch dargestellt werden, ihrerseits buttons enthalten usw.
Das klappt auch alles ganz gut, solange die darzustellenden Bilder geladen sind.
Lege ich ein Objekt an, wird das Bild geladen und ich benötige bereits in der nächsten Zeile die Bilddaten, die aber noch nicht zur Verfügung stehen.

Weitere Objekte hängen dann von diesem Objekt ab, ich kann es also nicht asynchron programmieren

Der Versuch auf das Bild zu warten scheitert an der Endlosschleife, hier mal mit ausgeklammertem Timeout.

Die Bedingung wird nie erfüllt, auch nicht wenn ich auf image.height!=0 teste.

Ich vermute mal, daß in der Schleife zumindestens mal so etwas wie processmessages stehen muß, damit andere Arbeiten weiter gehen?

Wer weiß Rat?

Code:
function loadImg (img_url)
{
const image = new Image();
imgLoad=false;
image.onload = function () {imgLoad=true;};
image.src = img_url;
var imgTO=false;

//var to=setTimeout(() => {
//  imgTO=true;
//}, 1000);

while ((!imgLoad)) { }; // wait && (!imgTO)
//clearTimeout(to);

//if (imgTO) { return null; } else { return image; }
return image;
}

Drucke diesen Beitrag

  sichtbare inputs finden
Geschrieben von: mike64 - 15.01.2024, 14:52 - Forum: Javascript - Antworten (2)

Hallo

ich hänge gerade bei einer Validierung von Eingaben in einem Modalfenster fest

Darin gibt es mehrere DIVs, die je nach Bedarf Input Felder ein und ausblenden.

Beim Verlassen rufe ich mit:

Code:
    var inputs = document.getElementsByTagName("input");


alle inputs des Modals auf.
Da sind aber auch die von den DIVs ausgeblendeten Felder mit drin, die ich hier gar nicht haben möchte.

Dann kommt eine Validitätsprüfung vereinfacht so dargestellt:

Code:
for (var i = 0; i < inputs.length; i++)
        {
          if ((inputs[i].  S I C H T B A R) && (!inputs[i].reportValidity()))
          {
            valid=false;
          }
                }


Jetzt finde ich nach langem Suchen keine Filtermöglichkeit auf die tatsächlich sichtbaren Inputs.
Ansonsten funktioniert das einwandfrei.

Kann jemand helfen?

Drucke diesen Beitrag

  MQTT Werte extrahieren
Geschrieben von: Anfänger - 10.01.2024, 15:06 - Forum: Javascript - Antworten (2)

Halllo, ich bin absoluter Anfänger im Bereich Webseiten vorab.
Ich habe viele umfangreiche Node-Red Dashboards und möchte gern einiges davon auf einer eigenen Webseite darstellen.

Schritt 1 habe ich geschafft: Zwei MQTT Live Werte kriege ich in der Browser Konsole angezeigt.
Schritt 2 kriege ich nicht hin: Die MQTT Werte auf der eigentlichen Webseite darzustellen

(Wenn Schritt 2 klappt, will ich mich dann um ein Design kümmern, z.B. ein Bild meiner Wärmepumpe und dort dann Textfelder dran tüddeln mit den Live Werten usw.)

Wäre nett wenn ihr mir zeigt wie ich "client.subscribe("VLT")" in html kriege.

Mein bisheriger Code:

Code:
<!doctype html>
<html lang="de">

<head>
    <meta charset="UTF-8">
    <title>MQTT Test</title>
    <meta name="MQTT Versuch" content="MQTT Versucht einzubinden">

    <script src="https://cdnjs.cloudflare.com/ajax/libs/paho-mqtt/1.0.1/mqttws31.min.js"
        type="text/javascript"></script>
    <script type="text/javascript" language="javascript">
        // Create a client instance
        const clientId = 'mqttjs_' + Math.random().toString(16).substr(2, 8);
        client = new Paho.MQTT.Client("192.168.168.9", Number(9001), clientId);

        // set callback handlers
        client.onConnectionLost = onConnectionLost;
        client.onMessageArrived = onMessageArrived;

        // connect the client
        client.connect({ onSuccess: onConnect });

        // called when the client connects
        function onConnect() {
            // Once a connection has been made, make a subscription and send a message.
            console.log("Verbindung hergestellt");
            client.subscribe("VLT");
            client.subscribe("RLT");
        }

        // called when the client loses its connection
        function onConnectionLost(responseObject) {
            if (responseObject.errorCode !== 0) {
                console.log("Verbindung verloren:" + responseObject.errorMessage);
            }
        }

        // called when a message arrives
        function onMessageArrived(message) {
            console.log("Beschreibung: " + message.destinationName);
            console.log("Nachricht: " + message.payloadString);
        }
    </script>
</head>

<body>
    <h1>meine Wärmepumpe</h1>
    <p>Livewert VLT: </p>
    <p>Livewert RLT: </p>
</body>

</html>

Sollte man den ganzen script Teil besser in eine 2. Datei auslagern anstatt im "head" ?

MfG

Drucke diesen Beitrag

  javascript in html einbinden
Geschrieben von: haiflosse - 01.01.2024, 20:25 - Forum: Javascript - Antworten (4)

Hallo!
Ich verwende folgenden javascript code in einer externen Datei:

Code:
// Ziel-Datum in MEZ
      var jahr=2024, monat=6, tag=03, stunde=08, minute=00, sekunde=00;
      var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);

      function countdown() {
        startDatum=new Date(); // Aktuelles Datum

        // Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
        if(startDatum<zielDatum)  {

          var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;

          // Jahre
          while(startDatum<zielDatum) {
            jahre++;
            startDatum.setFullYear(startDatum.getFullYear()+1);
          }
          startDatum.setFullYear(startDatum.getFullYear()-1);
          jahre--;

          // Monate
          while(startDatum<zielDatum) {
            monate++;
            startDatum.setMonth(startDatum.getMonth()+1);
          }
          startDatum.setMonth(startDatum.getMonth()-1);
          monate--;

          // Tage
          while(startDatum.getTime()+(24*60*60*1000)<zielDatum) {
            tage++;
            startDatum.setTime(startDatum.getTime()+(24*60*60*1000));
          }

          // Stunden
          stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
          startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);

          // Minuten
          minuten=Math.floor((zielDatum-startDatum)/(60*1000));
          startDatum.setTime(startDatum.getTime()+minuten*60*1000);

          // Sekunden
          sekunden=Math.floor((zielDatum-startDatum)/1000);

          // Anzeige formatieren
          //(jahre!=1)?jahre=jahre+" y,  ":jahre=jahre+" y,  ";
          (monate!=1)?monate=monate+" Monate,  ":monate=monate+" Monate,  ";   
          (tage!=1)?tage=tage+" Tage,  ":tage=tage+" Tage,  ";                 
          (stunden!=1)?stunden=stunden+" Std.,  ":stunden=stunden+" Std.,  ";   
          (minuten!=1)?minuten=minuten+" Min.,  ":minuten=minuten+" Min.,  "; 
          if(sekunden<10) sekunden="0"+sekunden;                             
          (sekunden!=1)?sekunden=sekunden+" Sek.":sekunden=sekunden+" Sek.";   

              //document.getElementById("zeit").innerHTML =jahre+monate+tage+stunden+minuten+sekunden;
            document.getElementById("zeit").innerHTML ="noch: "+monate+tage+stunden+minuten+sekunden;

          setTimeout('countdown()',200);
        }
        // Anderenfalls alles auf Null setzen
        else document.getElementById("zeit").innerHTML=
            "0 Monate,  0 Tage,  0 Std.,  0 Min.,  00 Sek.";
      }
in der html Datei binde ich den Code wie folgt ein und rufe die Funktion countdown() beim Laden der html Datei auf.

Code:
<!DOCTYPE html>
<html>
<head>
<script src="zeit.js"></script>
</head>
<body onLoad="countdown(); ">
<div id="zeit"></div>
</body>
</html>
In jedem Browser außer beim Firefox funktioniert dies.
Beim Browser Firefox muss ich den Code von zeit.js direkt in dei html Datei einbinden, dann funktioneirt es auch.
Daher wollte ich fragen, was ich ändern muss, damit es auch im Browser Firefox funktioniert.
Danke

Drucke diesen Beitrag

  Source einer <img> Komponente mit JS verändern
Geschrieben von: stamp1t - 01.01.2024, 02:17 - Forum: Javascript - Antworten (4)

Hi, ich weiß gerade wirklcih nicht mehr weiter. 
Ich möchte mit einem Funktionsaufruf die Quelle eines Bildes verändern.
Das ist mein Code:

Code:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>League Rank Overlay</title>
    <link rel="stylesheet" href="style2.css">
</head>
<body>
    <div id="rank-overlay">
       <div id="top-side">
        <div id="left-side">
            <div>
            <img id="icon" src="rank_icons/master.png", alt="Icon"></img>
            </div>
        </div>
            <div id="right-side">
                <div id="rank-text">
                    <div id="player-name"> Eliisboss </div>
                    <span id="rank-division">2</span>
                    <span id="rank-tier">Diamond</span>
                    <span id="rank-lp">54lp</span>
                </div>
            </div>
       </div>
        <div id="bottom-side">
            <div id="profile-link">
                <div>www.op.gg/summoners/euw/Eliisboss </div>
            </div>
        </div>
    </div>


    <!-- Einbindung des JavaScript am Ende des Body -->
    <script src="overlay.js"></script>
</body>
</html>

Code:
function updateOverlay(data) {
    document.getElementById("rank-tier").textContent = data.rank;
    document.getElementById("rank-division").textContent = data.division;
    document.getElementById("rank-lp").textContent = data.lp;
    document.getElementById("summoner-name").textContent = data.player;
    document.getElementById("profile-link").textContent = "www.op.gg/summoners/euw/" + data.summonerName;
    document.getElementById("icon").src = "rank_icons/Grandmaster.png";
    document.getElementById("player-name").textContent = data.player;

}

Weiß eventuell jemand, woran es liegt?
Danke!

Drucke diesen Beitrag

Wink commonjs mit mongodb verbinden
Geschrieben von: Poolgate - 30.12.2023, 17:14 - Forum: Javascript - Antworten (6)

Hallo Liebe Community,

nun ich lerne gerade JavaScript und möchte gerne eine mongodb-Datenbank mit meinen Projekt verbinden.
Ich habe Docker verwendet um eine MongoDB zu erstellen. Weiterhin wurde VS Code und Atlas verlinkt und ich kann manuell auf die Datenbank zufgreifen und die Collections "characters" sehen.


Hier ist der Code, der nicht funktioniert:

Code:
const MongoClient = require('mongodb').MongoClient;
const connectingstring = 'mongodb://localhost/database';

MongoClient.connect(connectingstring, (err, db) => {
    if (err) {
        console.log('Database wurde nicht verbunden!');
        process.exit(1);
    }
    console.log('Datenbank ist verbunden');
    const characters = db.collection('characters');
    console.log(characters.name);
    db.close();
});

Wenn ich mein Script unter nodejs aufführe, erwarte ich eigentlich ein console.log() ausdruck, was nicht kommt. Mein Terminal befindet sich in eine Endlosschleife. Wenn ich das Objekt "MongoClient.connect()" eine Variable zuweise und mir mit console.log() anzeigen lasse, erhalte ich ein Promise mit dem Attribut "pending".

Es wäre nett, wenn mir einer hier helfen würde.

viele Grüße
Poolgate

Drucke diesen Beitrag

  Bitte um Hilfe zu PDF Signaturfeld
Geschrieben von: LIDSCH - 14.12.2023, 11:37 - Forum: Javascript - Keine Antworten

Ich habe folgendes Problem:
Mir liegen eine mehrzahl von ausgefüllten PDF Formularen, unteranderen mit jeweils 6 Signaturfeldern, vor.
Nun möchte ich die Formulardaten auslesen was auch mit alle "normalen" Feldern nur eben nicht mit den Signaturfeldern funktioniert.

Nun meine Frage:
Gint es die Möglichkeit das Signaturfeld mit einem Script zubelegen, sodass wenn eine Signatur eingetragen wurde z.B. eine Checkbox geschalten wird?

Ich bin sehr neu hier und leider in blutiger Anfänger.

Grüß Lidsch

Drucke diesen Beitrag

  Bitte um Hilfe - Kalenderprojekt
Geschrieben von: Javafan - 06.12.2023, 16:02 - Forum: Javascript - Antworten (3)

Moin,
ich suche Hilfe als Java-Unbedarfter, da ich anscheinend die einfachsten Funktionen nicht fehlerfrei hinbekomme.

Ich stricke an einem Kalenderprojekt, das Datumsangaben aus verschiedenen Kalendern umrechnen kann. Derzeit versuche ich, einen bereits bestehenden Datumsrechner für meine Zwecke umzumodeln.

Ich habe eine Ein-/Ausgabemaske in HTML. Zuerst soll nur ein Wert in ein definiertes Eingabefeld eingegeben werden, der nach Klick auf einen Button in ein definiertes Ausgabefeld übetragen und angezeigt wird. Ich möchte dazu die Funktionen
document.getElementById("XYZ").value

zum Einlesen und

document.getElementById("ABC").innerHTML = ABC

zur Ausgabe nutzen. Klappt aber leider nicht ;-)

Vielleicht ist jemand so nett und hilft mir mal über diese Schwelle....

Dateiaustausch gerne über PM.

Danke! Big Grin

Drucke diesen Beitrag