JavaScript will nicht (Text in Element ändern per onclick)?

Hallo alle miteinander,

ich tüftle derzeit daran, den Text eines Elements zu ändern, sobald im unteren Menü ein Feld angeklickt wurde. Das Ganze funktioniert jedoch nicht und ich verstehe nicht wirklich warum. Könnt ihr mir helfen den Fehler zu finden?

Die wli-Variablen sollen den neuen Text enthalten, da ich das für jemanden programmiere, der keine Ahnung von JavaScript hat und ich es somit vereinfachen wollte, das er den Text ohne etwas kaputt zu machen, bearbeiten kann.

Hier einmal der Code, an dem ich herumprobiert habe. Allerdings ohne den CSS-Teil:

<script type="text/javascript">
  wli1 = "wli1";
  wli2 = "wli2";
  wli3 = "wli3";
  wli4 = "wli4";
  wli5 = "wli5";
  wli6 = "wli6";

  function fwli1() {
    document.getElementById("werdegangcon").value = wli1;
  }

  function fwli2() {
    document.getElementById("werdegangcon").value = wli2;
  }

  function fwli3() {
    document.getElementById("werdegangcon").value = wli3;
  }

  function fwli4() {
    document.getElementById("werdegangcon").value = wli4;
  }

  function fwli5() {
    document.getElementById("werdegangcon").value = wli5;
  }

  function fwli6() {
    document.getElementById("werdegangcon").value = wli6;
  }
</script>
<div class="conh15">
  <div class="con100">
    <div class="con_top center nummer">
      <h3>Werdegang</h3>
    </div>
    <div class="con_mid center" id="werdegangcon">
      2394    Abschluss des Abiturs mit Auszeichnung</br>
      2394    Job als Haustechnikerin
    </div>
    <div class="con_bot center">
      <ul class="werdegang">
        <li id="weli1" onclick="fwli1()">vor der Akademie</li>
        <li id="weli2" onclick="fwli2()">2395</li>
        <li id="weli3"onclick="fwli3()">2399</li>
        <li id="weli4"onclick="fwli4()">2401</li>
        <li id="weli5"onclick="fwli5()">2402</li>
        <li id="weli6" onclick="fwli6()">2403</li>
      </ul>
    </div>
  </div>
</div>
HTML, programmieren, JavaScript
HTML Kontaktformular per PHP an Mail senden?

Hallo, ich hab ein Kontaktformular in HTML erstellt bei dem man auch Dateien hochladen kann. Ich hab es auch schon so eingestellt dass alle Daten (Antworten) an mich per Mail gesendet werden, allerdings schaffe ich es nicht dass auch die Dateien als Anhang in der Mail mit gesendet werden, kann mir dabei jemand helfen?

Hier mein Code:

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="style.css" type="text/css">
    <title>NAME | Kontakt</title>
    <meta charset="utf-8">
   </head>
   <body>
    <div id="wrapper">
      <header><a href="index.html"><img src="bilder/logo vorschau.png" alt="Das Logo konnte nicht geladen werden!"></a></header>


      <nav>
        <ul>
          <li><a href="index.html">Home</a></li>
          <li><a href="ueber.html">Über</a></li>
          <li><a href="kontakt.html"><b>Kontakt</b></a></li>
        </ul>
      </nav>


      <section>
        <div id="kontaktformular">
          <h1>Wie können wir dir helfen?</h1>
          <?php
          if(isset($_POST["submit"])){
            mail("reinhard.habisohn@icloud.com", "Kontaktformular von ".$_POST["name"], 'Name: '.$_POST["name"].' ||  Email: '.$_POST["email"].' ||  Telefonnummer: '.$_POST["telefon"].' ||  Priorität: '.$_POST["priorität"].' ||  Betreff: '.$_POST["betreff"].' ||  Nachricht: '.$_POST["message"]);
            ?>
            <em><h1 style="color: green;">Deine Anfrage wurde erfolgreich versendet!</h1><a>(Die Antwort senden wir dir an die angegebene E-Mail Adresse!)</a></em>
            <?php
          }
           ?>
          <form action="index.php" method="post" enctype="multipart/form-data">
            <br><label>Name:</label><br>
            <input type="text" name="name" required><br>
            <br><label>E-Mail:</label><br>
            <input type="email" name="email" required><br>
            <br><label>Telefonnummer (optional):</label><br>
            <input type="number" name="telefon"><br>
            <br><label>Wichtigkeit:</label><br>
            <select name="priorität" required>
              <option value"gering">Gering</option>
              <option value"mittel">Mittel</option>
              <option value"hoch">Hoch</option>
            </select><br>
            <br><label>Betreff:</label><br>
            <input type="text" name="betreff" required><br>
            <br><label>Nachricht:</label><br>
            <textarea rows="7" name="message" required></textarea><br>
            <br><label>Anhang (optional):</label><br>
            <input type="file" name="datei[]" multiple><br>
            <br><button type="submit" name="submit">Absenden</button>
          </form>
        </div>
      </section>
    </div>
  </body>   
</html>

Vielen Dank im Vorhinein!

Computer, HTML, Kontakt, PHP, kontaktformular
HTML Form auswerten und neue Füllen?

Hey!

Ich habe folgende Input form:

        <form action="/calculate" method="GET">
            <br><label for="KM_cost_truck_a">KM cost truck a</label>
            <input required placeholder="10" ype="text" id="KM_cost_truck_a" name="KM_cost_truck_a"><br>
    
            <label for="KM_cost_truck_b">KM cost truck b</label>
            <input required placeholder="9" type="text" id="KM_cost_truck_b" name="KM_cost_truck_b"><br>
    
            <label for="Product_cost_a">Product cost a</label>
            <input required placeholder="7" type="text" id="Product_cost_a" name="Product_cost_a"><br>
    
            <label for="Product_cost_b">Product cost b</label>
            <input required placeholder="11" type="text" id="Product_cost_b" name="Product_cost_b"><br>
    
            <label for="Source_a_location">Source a location</label>
            <input required placeholder="Berlin" type="text" id="Source_a_location" name="Source_a_location"><br>
    
            <label for="Source_b_location">Source b location</label>
            <input required placeholder="Paris" type="text" id="Source_b_location" name="Source_b_location"><br>
    
            <label for="Truck_a_capacity">Source a capacity</label>
            <input required placeholder="5" type="text" id="Truck_a_capacity" name="Truck_a_capacity"><br>
    
            <label for="Truck_b_capacity">Source b capacity</label>
            <input required placeholder="3" type="text" id="Truck_b_capacity" name="Truck_b_capacity"><br>


            <button type="submit" id="calcbtn" value="Submit">Calculate</button>
        </form>

Die eine Anfrage an meinen Server schickt und die ergebnisse dann auf eine neue Seite kommen. (Man wirt weitergeleitet)

Wie kann ich eine neue form mit der Antwort vom server füllen?

HTML, JavaScript, Webentwicklung
Navigationsleiste auf andere html?

Hallo, ich bin ziemlich neu was Websides programmieren angeht und ich finde kein gutes tutorial dazu, wie man wenn man eine Navigationsleiste hat z.b auf Getränke klickt und dann eine andere html/css Seite mit Getränken auftaucht etc.

versuche da auxh bisschen JavaScript mit rein zubringen d.h Benutze die Navigationsleiste von Material Design Lite.

Bin da bisschen überfragt und habe keine ahnung😅

<!-- Always shows a header, even in smaller screens. -->
<div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
  <header class="mdl-layout__header">
    <div class="mdl-layout__header-row">
      <!-- Title -->
      <span class="mdl-layout-title">Title</span>
      <!-- Add spacer, to align navigation to the right -->
      <div class="mdl-layout-spacer"></div>
      <!-- Navigation. We hide it in small screens. -->
      <nav class="mdl-navigation mdl-layout--large-screen-only">
        <a class="mdl-navigation__link" href="">Link</a>
        <a class="mdl-navigation__link" href="">Link</a>
        <a class="mdl-navigation__link" href="">Link</a>
        <a class="mdl-navigation__link" href="">Link</a>
      </nav>
    </div>
  </header>
  <div class="mdl-layout__drawer">
    <span class="mdl-layout-title">Title</span>
    <nav class="mdl-navigation">
      <a class="mdl-navigation__link" href="">Link</a>
      <a class="mdl-navigation__link" href="">Link</a>
      <a class="mdl-navigation__link" href="">Link</a>
      <a class="mdl-navigation__link" href="">Link</a>
    </nav>
  </div>
  <main class="mdl-layout__content">
    <div class="page-content"><!-- Your content goes here --></div>
  </main>
</div>
Computer, Homepage, HTML, IT, Webseite, programmieren, CSS, JavaScript, Webdesign, Webentwicklung
PHP: Ergebnis erst später aufdecken nach Antwort?

Hey,

ich habe folgenden html und php-Code.

<form action="Subtraktion (1).php" method="post" target="">
<table>
<tr>
<td><font face="Roboto Slab" size=+1>Anzahl der Aufgaben eingeben</font></td>
<td><input type="Text" name="z" value="" size="" maxlength=""></input></td>
<td align="center"><input type="submit"  style="font-family: 'Roboto Slab'"  background-color="black" name="y" value="Absenden"></td></tr>
</table>
<br>
</form>

<?php
if((isset($_POST['z'])) and (is_numeric($_POST['z'])))
{
$zahl = $_POST['z'];

{

 while($zahl>0)
  {

  $a = rand(5, 10);
  $b = rand(0, 5);
  $erg = $a - $b;
  $zahl = $zahl - 1;

  echo "<table class='Tab'>";
  echo "<table border='1'>";
  echo "<tr> <td>$a - $b = ?</td> <td><input type=\"Text\" name=\g\"  value=\"\">\n</td><td>$a - $b = $erg</td></tr>";
  echo "</table>";
}
}}

?>
</body>
</html>

Damit soll der Nutzer Aufgaben – so viel wie er anfangs ausgewählt hat, berechnet können. Die Aufgaben bestehen hierbei aus zufälligen Zahlen. Meine Frage wäre jetzt: wie ich es schaffen kann (mit eher einfachen Befehlen), den Code so zu schreiben, dass das Ergebnis – hier: $a - $b = $erg – erst enthüllt wird, sobald der Nutzer ins Textfeld seine Antwort zur Aufgabe eingegeben hat?

Hier nochmals die Stelle (auch oben zusammen mit dem gesamten Code sichtbar):

echo "<table class='Tab'>";
echo "<table border='1'>";
echo "<tr> <td>$a - $b = ?</td> <td><input type=\"Text\" name=\g\" value=\"\">\n</td><td>$a - $b = $erg</td></tr>";
echo "</table>";

Vielen Dank :)

HTML, programmieren, rechnen, PHP, Textfeld, Variablen, Zufallszahlen, Antwort
PHP dynamisch mit unterschiedlichen Datenbanken verbinden?

Hallo!

Folgende Situation:

Es gibt mehrere Datenbanken. Eine für alle Installationen meines Projektes (beinhaltet Zugangsdaten für Schul-DB's) und dann weitere, schulspezifische Datenbanken, in denen jeweils andere Dinge stehen (wie zum Beispiel Schüler mit ihren Logindaten, etc.)

Der Benutzer ruft also eine Loginseite auf und gibt eine Schul-ID ein. Nach Buttonklick wird die an ein PHP-Skript übergeben, welche dann aus der Datenbank aller Instanzen die entsprechenden Zugangsdaten für die schulspezifische Datenbank ausliest (anhand der Schul-ID).

Anschließend sollen diese als Variable gesetzt werden, sodass von überall in diesem Skript darauf zugegriffen werden kann. Dabei soll das Ganze allerdings nur für diese Session ersetzt werden und nicht in der Datei. Sodass andere Schüler andere Schul-ID's und damit auch andere Schul-DB's verwenden können.

Wenn der Benutzer dann auf der Loginseite seinen Benutzernamen und sein Passwort eingibt, wird dieses wieder an das PHP-Skript übergeben, welches nun in der schulspezifischen DB nachschaut, ob dort der entsprechende Nutzer existiert.

Folgendes Schema habe ich bis jetzt:

class DB {
  private static $_api_username = "root";
  private static $_api_password = "";
  private static $_api_host = "localhost";
  private static $_api_name = "programmingnow_host";
  private static $_api;

  private static $_db_username = $_SESSION['school_db_user'];
  private static $_db_password = $_SESSION['school_db_pass'];
  private static $_db_host = "localhost";
  private static $_db_name = $_SESSION['school_db_name'];
  private static $_db;

  function __construct() {
    try {
      self::$_api = new PDO("mysql:host=" . self::$_api_host . ";dbname=" . self::$_api_name . ";charset=utf8mb4",  self::$_api_username , self::$_api_password);

      if (isset($_SESSION['school_db_name'])) {
        self::$_db = new PDO("mysql:host=" . self::$_db_host . ";dbname=" . self::$_db_name . ";charset=utf8mb4",  self::$_db_username , self::$_db_password);
      }
    }
    catch(PDOException $e) {
      echo "Datenbankverbindung gescheitert!";
      die();
    }
  }
  
  function connectToSchoolDB($school_id) {
    $stmt = self::$_api->prepare("SELECT instance_db_name, instance_db_user, instance_db_pass FROM instances WHERE instance_key=:instance_key");
    $stmt->bindParam(":instance_key", $school_id);
    $stmt->execute();
    $result = $stmt->fetch();
    $result['instance_db_name'] = $_SESSION['school_db_name'];
    $result['instance_db_user'] = $_SESSION['school_db_user'];
    $result['instance_db_pass'] = $_SESSION['school_db_pass'];
  }

  [..] // Der ganze Rest an Funktionen (wie Login)
} 

Der obige Code funktioniert aber nicht.

Könnt ihr mir da helfen? Wie kann ich das realisieren bzw. wo liegt der Fehler?

Danke schon einmal im Voraus!

VG!

Computer, Technik, HTML, Webseite, programmieren, MySQL, PHP, Technologie, Webentwicklung
JavaScript Rechentrainer Schulaufgabe?
<html>
	<head>
		<title> Kopfrechentrainer </title>
	</head>
	<body>
<script language=javascript>


{	var a;
	var b;
	var c;
	var d;
	var f=0;
	var r=0;
}	
	function random()
	
{
	a=Math.floor(Math.random()*90)+10;
	document.rechnen.eingabe1.value=a;
	
	b=Math.floor(Math.random()*9)+1;
	document.rechnen.eingabe2.value=b;	
}


	function kontrolle()
{
	
		if(onclick=kontrolle){onclick=random}
	c=document.rechnen.vergleich.value;
	if(a*b==c){r++;document.rechnen.richtig.value=""+r}
	if(a*b!=c){f++;document.rechnen.falsch.value=""+f}
	
	if(r+f==5)
{
	if(r==0){alert('oh, das war garnichts, übe noch einmal')}
	if(r==1){alert('du musst noch einaml üben')}
	if(r==2){alert('da geht noch mehr')}
	if(r==3){alert('du solltest och etwas üben')}
	if(r==4){alert('das nächste mal vielleicht')}
	if(r==5){alert('sehr gut, du hast alle Aufgaben richtig gelöst')}
}
	if(r+f==5){onclick=zurück}
}
	function zurück()
{
	document.rechnen.richtig.value=""
	document.rechnen.falsch.value=""
}










</script>








	
		<font color ="red"> <h2 align = center>  Kopfrechentrainer  </h2> </font>
		<br>
		<p align = center> <b>  
		Du kannst hier Multiplikationsaufgaben üben. <br>
		Beim Klicken auf den Button werden dir dir nacheinander 5 Aufgaben gestellt.
		</p> </b>
		<br>
		<br>
		<h1 align = center> Bereit? </h1>
		<br>
	<form name="rechnen" p align = center>
		<input type=button value="Start" onclick=random()>
		<br> <br>
		<INPUT type=text name=eingabe1 value=""> *
		<INPUT type=text name=eingabe2 value=""> =
		<INPUT type=text name=vergleich value="">
		
			<input type=button value="Kontrolle" onclick=kontrolle()>


				
		<br> <br> 
	<p align = center> <b>
		Richtig gelöst <------------> Falsch gelöst
	</b> 
		<br> <br>
		<INPUT type=text name=richtig value=""> 
		<INPUT type=text name=falsch value="">
	<br> <br>
		
	</form /p>>










	</body>
</html>

An sich Funktioniert erstmal alles so wie es soll, jedoch besteht das Problem darin das wenn ich in das Textfeld um ein neues Ergebnis einzutragen gehe, dann wird eine neue Aufgabe erstellt obwohl ich nicht auf den Button Kontrolle geklickt habe.

Ich hoffe jemand kann mir helfen, vielen dank.

Computer, HTML, programmieren, JavaScript
Html und Javascritp Gif ein und ausblenden lassen?

Ich möchte mit Html und Javascript ein Gif per button einfügen lassen. Ich habe schon einiges ausprobiert aber es funktioniert nicht, ich würde mich gerne über Hilfe freuen. (Die Aufgabe war es einen Kopfrechentrainer zu programmieren, als Zusatz ein Bild einfügen,...)

<html>
	<head>
		<title> Kopfrechentrainer Ultimate </title>
	</head>
	<body>
<script language=javascript>


{	var a;
	var b;
	var c;
	var d;
	var f=0;
	var r=0;
	var x;
}	
	function random()
	
{
	a=Math.floor(Math.random()*90)+10;
	document.rechnen.eingabe1.value=a;
	
	b=Math.floor(Math.random()*9)+1;
	document.rechnen.eingabe2.value=b;	
}


	function kontrolle()
{
	c=document.rechnen.vergleich.value;
	if(a*b==c){r++;document.rechnen.richtig.value=""+r}
	if(a*b!=c){f++;document.rechnen.falsch.value=""+f}


	if(r+f==50)
{
	if(r==0){alert('soos')}
	else if(0<r<=10){alert('saas')}
	else if(10<r<=20){alert('sees')}
	else if(20<r<=30){alert('siis')}
	else if(30<r<=40){alert('suus')}
	else if(40<r<=50){alert('fiif')}
}


}
	function zurück()
{
	document.rechnen.richtig.value=""
	document.rechnen.falsch.value=""
}


	function shutdown()
{
	window.open('https://www.youtube.com/watch?v=dQw4w9WgXcQ');
}


	function bka()
{
   	var audio = new Audio('sirene.mp3');
   	audio.play();


	document.getElementById("bkaf").style.display="none";
}


</script>








	
		<font color ="red"> <h2 align = center>  Kopfrechentrainer Ultimate </h2> </font>
		<br>
		<p align = center> <b>  
		Du kannst hier Multiplikationsaufgaben üben. <br>
		Beim Klicken auf den Button werden dir dir nacheinander 50 Aufgaben gestellt.
		</p> </b>
		<br>
		<br>
		<h1 align = center> Bereit? </h1>
		<br>
	<form name="rechnen">
		<input type=button value="Start" onclick=random()>
		<br> <br>
		<INPUT type=text name=eingabe1 value=""> *
		<INPUT type=text name=eingabe2 value=""> =
		<INPUT type=text name=vergleich value="">
		
			<input type=button value="Kontrolle" onclick=kontrolle()>
			<input type=button value="Zurücksetzen" onclick=zurück()>
				
		<br> <br> 
	<p align = center> <b>
		Richtig gelöst Falsch gelöst
	</b> 
		<br> <br>
		<INPUT type=text name=richtig value=""> 
		<INPUT type=text name=falsch value="">
	<br> <br>
		<input type=button value="shutdown" onclick=shutdown()>
	<br> <br>
		<input type=button value="BKA Modus" onclick=bka()>
		
		<audio autoplay>
 		 <source src="sirene.mp3" type="audio/mpeg">
		</audio>
		<br>
	<div id="bkaf">
	<img id="blaulicht" src="blaulicht.gif">	
	</div>


	</form>










	</body>
</html>
Computer, HTML, programmieren, JavaScript
JavaScript Problem?

Hab mir einen Passwort Generator gemacht (Code unten), aber irgendwas stimmt da manchmal nicht und ich komm nicht drauf.

Ist noch nicht fertig oder überhaupt ein Krasser Passwort Generator aber hab den aus Langeweile gemacht und dieser Fehler stört mich.

Kann mir jemand weiterhelfen ?

Hier steht kein Undefined.

Hier steht ein Undefined mitten im erstellten Passwort.

Ist nur kurzer JavaScript Code:


let pwLength = 12;
let randomNumber  = Math.round(Math.random() *3);
let ALPHABET = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',  'S', 'T', 'U', 'V', 'W', 'X','Y', 'Z' ];
let alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
let Numbers = ["0","1","2","3","4","5","6","7","8","9"];
let SpecialChar = 
            ["!", "*", "#" ,"," ,";" ,"?", "+", "-", "_" ,".", "=", "~", "^", "%", "(", ")" ,"{", "}", "[", "]", "|", ":", "/" ];
let passwort = "";


    for (i = 0; i <= pwLength - 1; i++){
    /* zufällige Zahl zwischen 0-3,
    Bei jedem Schleifendurchgang geht es in ein anderes if statement rein */
    randomNumber  = Math.round(Math.random() *3);


                    // +1 Großbuchstabe
                if (randomNumber == 0){
                passwort += ALPHABET[Math.round(Math.random() *ALPHABET.length)]; }
                  // +1 Kleinbuchstabe
                if (randomNumber == 1){
                passwort += alphabet[Math.round(Math.random() *alphabet.length)];}
                  // +1 Zahl
                if (randomNumber == 2){
                   passwort += Numbers[Math.round(Math.random() *Numbers.length)];}
                    // +1 Sonderzeichen
                if (randomNumber == 3){
                passwort += SpecialChar[Math.round(Math.random() *SpecialChar.length)];}
    }
                if (passwort.includes("undefined")){
                console.log("Undefined Fehler, Passwort lautet " + passwort);}
                else{ console.log("Dein Passwort lautet : " +passwort )}

Glaube mit Switch Case wäre das besser als if, hab ich aber nie benutzt nur in Tutorials mal gesehen

Bild zum Beitrag
Computer, HTML, programmieren, CSS, JavaScript, Fachinformatiker, Informatik, JQuery, MySQL, web.de, Angular

Meistgelesene Beiträge zum Thema HTML