TweakPC

Zurück   Computer Hardware Forum - TweakPC > Games und Software > Programmiersprachen

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01.10.2017, 15:49   #1 (permalink)
Der Date Doktor
 
Benutzerbild von Kodak
 

Registriert seit: 09.11.2003
Beiträge: 2.719

Kodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein Lichtblick

Standard HTML Formular senden / nicht senden

Moin

Ich bastel gerade an einem kleinen Projekt und bin da auf ein "Problem" gestoßen, für das ich noch keine wirkliche Lösung gefunden habe.

Ich habe ein Formular, das ein paar Elemente beinhaltet, die mit Werten gefüllt sind bzw. sein müssen. Unter anderem ein Textfeld und ein Dropdown Menü. Zum Absenden des Formulars wird normaler HTML Button benutzt.

Zu meiner Frage:
Kann ich irgendwie nach dem Klick auf den Button das Formular überprüfen und dann per Rückgabe (true/false) entscheiden ob das Formular gesendet wird oder einfach nichts passiert?

Zur Verfügung stehen mir PHP und JavaScript/jQuery.
Will Smith for President!
Kodak ist offline   Mit Zitat antworten
Alt 02.10.2017, 13:34   #2 (permalink)
Bitte nicht füttern!
 
Benutzerbild von Robert
 

Registriert seit: 22.01.2002
Beiträge: 15.722

Robert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz seinRobert kann auf vieles stolz sein

Standard AW: HTML Formular senden / nicht senden

Wie sollte "nichts" passieren?

sobald du drückst wird ja das nächste php script aufgerufen und das kann dann ja prüfen ob daten angekommen sind.

Wenn du die eingabefelder überprüfen willst ob die leer sind oder nicht, das geht recht einfach mit javascript.

https://wiki.selfhtml.org/wiki/Museu...berpr%C3%BCfen

Neuerdings kann man einzelne felder auch mit html5 validieren.

https://wiki.selfhtml.org/wiki/HTML/...ML5_validieren
Webmaster / Forumadmin [TweakPC Team]
"It is far easier to concentrate power than to concentrate knowledge." Thomas Sowell
Robert ist offline   Mit Zitat antworten
Alt 02.10.2017, 13:51   #3 (permalink)
Blödmarktkundenberater
 
Benutzerbild von Exit
 

Registriert seit: 10.04.2002
Beiträge: 10.661

Exit hat eine strahlende Zukunft
Exit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende Zukunft

Standard AW: HTML Formular senden / nicht senden

Bitte beachte!

All Input is Evil - vor allem im Netz.

Auf Deutsch - im PHP auf dem Web-Server musst Du unbedingt den Inhalt des Formulars kontrollieren.

Die Clientseitige Validierung ist optional und dient der "User Experience" (scheiB Marketing Denglisch)

Mit jQuery sollte sowas eigentlich Problemlos gehen. Schau mal hier: https://stackoverflow.com/questions/...-submit-jquery
Power is nothing without Control!
Hauptsystem
Exit ist offline   Mit Zitat antworten
Alt 03.10.2017, 18:32   #4 (permalink)
Der Date Doktor
 
Benutzerbild von Kodak
 

Registriert seit: 09.11.2003
Beiträge: 2.719

Kodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein LichtblickKodak ist ein Lichtblick

Standard AW: HTML Formular senden / nicht senden

@Robert und Exit
Erstmal Danke für die Links, das man mit HTML5 validieren kann wusste ich noch nicht ^^ Ist aber interessant zu wissen.
Ich hab mir jetzt erstmal so beholfen:

PHP-Code:
$(document).ready(function() {
       $(
"#myButton").click(function() {
           var 
display = $("#myDropDown option:selected").text();
           
           if(
display == "") {
               $(
"#myDivTag").fadeIn().delay(3000).fadeOut();
               return 
false;
           }
           else {
               return 
true;
           }
       });
    }); 
Durch das return false bekomme ich genau das Verhalten das ich brauche ^^ Wenn ich jetzt den Button klicke und im Dropdown ist nix ausgewählt passiert auch einfach nichts, außer natürlich das für die 3 Sekunden eine kleine Fehlernachricht eingeblendet wird.

Jetzt habe ich noch eine Frage, aber vorher versuche ich mal schnell die Situation zu erklären, dann ist es leichter nachzuvollziehen ^^

Es geht hier um einen Server (Raspberry Pi 3) der einen Webserver + MySQL Datenbank bereitstellt und ein eigenes WLAN erzeugt (hostapd + dnsmasq). Die Clients die sich hier verbinden sind auch wieder Raspberry Pi's die mit einem 7" Touchscreen angeschlossen sind.
Die Website, die auf dem Server gehostet ist, dient dazu Texte zu verfassen und dann an die jeweiligen Displays zu senden. Die zeigen dann diese Texte für eine angegebene Zeitspanne an.
Dieses oben erwähnte Dropdown Menü hält alle verfügbaren Displays zur Auswahl, das heisst wenn ich einen Text an ein Display anzeigen lassen will, muss ich mir da eins aussuchen. Daher darf bzw. sollte das Dropdown Menü nicht leer sein. Das funktioniert jetzt soweit.

Aber:
Gibt es eine Möglichkeit, nach dem Submit (also wenn die Seite neu geladen wurde nach dem Buttonklick) eine Funktion auszuführen? Also im Grunde den Code von oben nochmal, nur mit anderen Elementen ^^ Gibt's da irgendein Event oder sowas das ich mir da abgreifen kann? Denn wenn ein Text erfolgreich übertragen wurde, steht das in der Datenbank. Und mit dieser Information möchte ich dem Benutzer dann mitteilen dass es geklappt hat.

@Exit
All Input Is Evil - Ja, das hat man uns wirklich eingetrichtert im Studium In der Hinsicht bedarf es noch ein bisschen Arbeit, ich versuche gerade erstmal ein funktionierendes Grundkonstrukt zu erschaffen Das ist aber definitiv ein wichtiger Punkt, also außer Acht lassen werde ich das nicht.
Kodak ist offline   Mit Zitat antworten
Alt 03.10.2017, 22:02   #5 (permalink)
Blödmarktkundenberater
 
Benutzerbild von Exit
 

Registriert seit: 10.04.2002
Beiträge: 10.661

Exit hat eine strahlende Zukunft
Exit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende ZukunftExit hat eine strahlende Zukunft

Standard AW: HTML Formular senden / nicht senden

Pauschal ist eine Webseite erstmal Zustandslos - bedeutet, jeder Seitenbesuch stellt eine neue Verbindung her.

Aus dem Grund müsstest Du in einem Reload Dir einen "Hint" hinterlegen, dass Du jetzt was besonderes willst.

z.B.: meinesteite.php?success=1

oder sowas in der Art.

Jetzt könntest Du mit Javascript (Query ist auch nix anderes als Javascript) den Querystring kontrollieren.

Code:
$(document).ready(function() { 
  // hier den code rein
}
Schau mal hier - eventuell findest Du ja das passende zum parsen des Querystrings.

https://stackoverflow.com/questions/...tring-from-url

---------- Post hinzugefügt 22:02 ---------- Vorheriger Post von at 21:56 ----------

Alternativ könntest Du auch überlegen, ob Du gleich auf AJAX umstellst. Dabei wird nicht die komplette Seite neu geladen - sondern nur Teile dynamisch ausgetauscht.

https://www.html-seminar.de/ajax-einfuehrung.htm

Dabei bekommt man deutlich mehr Kontrolle, und prinzipiell ähnelt es deutlich mehr einer Client Anwendung. Aber ist natürlich kein muss.
Exit ist offline   Mit Zitat antworten
Antwort

Stichworte
formular, html, senden


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Array an main() senden in C Daiquiri Programmiersprachen 12 25.01.2011 17:24
HTML Formular an Datei senden GPac Programmiersprachen 3 05.04.2007 15:01
senden an menü (shortcut nicht sichtbar) john carmack Windows & Programme 8 22.01.2007 20:46
ICQ: Dateien empfangen geht, senden nicht!? Dr. BeSt Windows & Programme 9 31.10.2005 14:25
email senden unter mozilla _Smash_ Linux bzw. Non-MS & Programme 8 23.06.2003 23:48


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:39 Uhr.






Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.
Impressum, Datenschutz Copyright © 1999-2015 TweakPC, Alle Rechte vorbehalten, all rights reserved