php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 1,00 durchschnittlich.
  #1 (permalink)  
Alt 02-12-2009, 16:10
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard Formular:sicherstellen das mit Ajax gesendetes Formular vom eigenen Formular stammt?

Hallo,
also ich habe ein Formular welches mit Hilfe von JS gebrüft wird, und nur wenn alles meine Vorgaben entspricht wird es an den Server geschickt und PHP ausgewertet.
Gibt es eine Möglichkeit mit der ich verhindern kann das sich irgendwer ein eigenes Formular bastelt und somit die JS-Prüfung umgeht?
Mit Zitat antworten
  #2 (permalink)  
Alt 02-12-2009, 16:17
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 623
streuner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi!

Was machst Du eigentlich mit den Leuten, die JavaScript deaktiviert haben? Die umgehen damit ja auch dein Prüfung!

mfg streuner

Zu deiner Frage: http://forum.de.selfhtml.org/archiv/2004/6/t82636/
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

Geändert von streuner (02-12-2009 um 16:25 Uhr)
Mit Zitat antworten
  #3 (permalink)  
Alt 02-12-2009, 16:31
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

Danke, für deine Antwort.
Leider habe ich nicht ganz verstanden wie genau dies mir helfen könnte?
Eine Session zu starten bringt nichts, dann öffnet derjenige einfach ein zweiten Tab.


JS setze ich zur Nutzung vorraus, anssonsten bekommt der User schon beim aufrufen des Formulars eine Meldung das JS aktiviert werden muss.
Wenn JS nicht aktiviert ist, ist das Formular nicht absendbar.
Mit Zitat antworten
  #4 (permalink)  
Alt 02-12-2009, 16:38
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 623
streuner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Kannst es dem User zumindestens erschweren, schau Dir das Beispiel hier an (Stichwort microtime):

http://www.selfphp.de/kochbuch/kochbuch.php?code=21


mfg streuner
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"
Mit Zitat antworten
  #5 (permalink)  
Alt 02-12-2009, 17:31
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

Danke dir für deine Mühe,
leider bringt es nichts.
Wahrscheinlich gibt es keine Möglichkeit dies zu verhindern.
Ich will keine doppelte Absendung verhindern.

Ich möchte verhindern das jmd. die JS-Prüfung umgeht, also einfach das Formular nachbastelt, mein Formular aufruft sich die id's,name', und values der hiddenfelder kopiert und dann an php via nachgebauter JS sendet.

Ich denke da muss ich via PHP die getätigten eingaben trotzdem nochmal auf gewisse zeichen prüfen.

Aber dir vielen Dank, irgendwann wirds mir sicher helfen )).
Mit Zitat antworten
  #6 (permalink)  
Alt 02-12-2009, 21:53
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Pums Beitrag anzeigen
Ich denke da muss ich via PHP die getätigten eingaben trotzdem nochmal auf gewisse zeichen prüfen.
Sollte man imho immer machen, da man clientseitig eh sehr viel manipulieren kann.

Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #7 (permalink)  
Alt 03-12-2009, 01:46
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

nochmal zum Verständnis: Geht es darum, dass die hidden-Felder nicht manipuliert werden dürfen oder um die Daten, die der Benutzer selbst eingibt?

Wenn es nur um die hidden-Felder geht und die nicht mit JS gesetzt werden sondern vom Server kommen: Benutze eine Session und speichere die Infos dort drin, statt in hidden-Feldern.

Wenn es um die hidden-Felder geht und die mit JS gesetzt werden: Was willst du eigentlich verhindern? Kann man das nicht auch PHP-seitig (nochmal) prüfen? Ist es das was du mit "gewisse Zeichen" meinst?

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #8 (permalink)  
Alt 04-12-2009, 15:52
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

Es ging halt einfach nur um die übliche Prüfung der eingegebenen Daten auf nicht erlaubte Zeichen(Name darf keine Zahl erhalten usw.), Sonderzeichen die gefählich sein könnten(z.B.<>).
Ich habs mit JS gemacht da ich einfach allg. eine den Server vorab vor solche Daten schützen möchte und um Benutzerfreundlicher zu werden.

Natürlich kann es dann passieren das jmd. die Daten direkt an den Server schickt, man kann ja das JS sowie die Formulardaten(id's,hiddenfelder etc.) sehr leicht auslesen.

Nun dachte ich mir vllt. gibts ja ne Möglichkeit am Server zu prüfen ob die Daten von meinem Formular über mein Http(post)Request von JS bzw. Ajax gesendet wurden.
Das würde einfach eine erneute Kontrolle der Daten am Server ersparen.

Da das logischerweise nicht geht, überprüf ich das gnaze also trotzdem nochmal mit am Server.

Ich danke euch .
Mit Zitat antworten
  #9 (permalink)  
Alt 04-12-2009, 15:58
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Übrigens sollte man sich langsam mal von dem Schwarz-Weiß Denken ala "es gibt nur JavaScript an und JavaScript aus" verabschieden. In Zeiten, in denen Browser ein unerwünschtes von einem erwünschten PopUp unterscheiden können, kann ein Browser auch nervige Alters unterbinden. Und dann besteht auch noch die Möglichkeit, dass ich JavaScript erst NACH dem aufrufen der Seite aber VOR dem absenden deaktiviere (vor allem wenn ich z.B. merke, dass da ein übereifriger Entwickler mal wieder der Meinung wäre, ich dürfte keine Plus-Zeichen in meiner eMail-Adresse haben, da diese damit ungültig wäre).

Geändert von unset (04-12-2009 um 17:31 Uhr)
Mit Zitat antworten
  #10 (permalink)  
Alt 04-12-2009, 17:27
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Pums Beitrag anzeigen
Ich habs mit JS gemacht da ich einfach allg. eine den Server vorab vor solche Daten schützen möchte
Den Server brauchst du vor solchen Sachen nicht „schützen”.

Zitat:
Nun dachte ich mir vllt. gibts ja ne Möglichkeit am Server zu prüfen ob die Daten von meinem Formular über mein Http(post)Request von JS bzw. Ajax gesendet wurden.
Nein, die gibt es nicht.
Zitat:
Das würde einfach eine erneute Kontrolle der Daten am Server ersparen.
Diese Kontrolle ist generell unverzichtbar.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #11 (permalink)  
Alt 04-12-2009, 18:54
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von unset Beitrag anzeigen
Übrigens sollte man sich langsam mal von dem Schwarz-Weiß Denken ala "es gibt nur JavaScript an und JavaScript aus" verabschieden. In Zeiten, in denen Browser ein unerwünschtes von einem erwünschten PopUp unterscheiden können, kann ein Browser auch nervige Alters unterbinden. Und dann besteht auch noch die Möglichkeit, dass ich JavaScript erst NACH dem aufrufen der Seite aber VOR dem absenden deaktiviere (vor allem wenn ich z.B. merke, dass da ein übereifriger Entwickler mal wieder der Meinung wäre, ich dürfte keine Plus-Zeichen in meiner eMail-Adresse haben, da diese damit ungültig wäre).

Danke, für deine Antwort.

Zu meiner Verteidigung möchte ich auch darauf Hinweisen das ich ein Neuling bin, beschäftige miche erst seit 1/2 Jahr mit der Webprogrammierung, muss also noch ne Menge lernen(danke das es solche Foren gibt ).

"auch nervige Alters unterbinden"->Was meinst du mit Alters?

"dass ich JavaScript erst NACH dem aufrufen der Seite aber VOR dem absenden deaktiviere"-> aber dann wird ja nicht gesendet, das das onclick-Event nicht ausgeführt wird.Ist übrigends kein submit sondern ein button.




@wahsaga
hab ich mir fast gedacht(zu allen 3 Punkten).Hätt ja sein können das es ne Möglichkeit gibt.Danke
Mit Zitat antworten
  #12 (permalink)  
Alt 04-12-2009, 18:59
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Pums Beitrag anzeigen
"auch nervige Alters unterbinden"->Was meinst du mit Alters?
Tippfehler, Alert dürfte gemeint gewesen sein - window.alert()

Zitat:
"dass ich JavaScript erst NACH dem aufrufen der Seite aber VOR dem absenden deaktiviere"-> aber dann wird ja nicht gesendet, das das onclick-Event nicht ausgeführt wird.Ist übrigends kein submit sondern ein button.
Total egal. Bereits wenn sich der Fokus in einem Text-Input befindet, lässt sich ein Formular mittels Entertaste abschicken.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #13 (permalink)  
Alt 04-12-2009, 19:22
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

1.ahhh, alles klar, alerts gibts aber net.
2.ich glaub ich poste mal den Code, bei mir lässt sich das Formular nicht über ein Enter abschicken da es ja via Ajax an den Server gesendet wird .

Also hier Das Formular was ich übergebe:
PHP-Code:
<?php
$Cont
='
<noscript><b>Sie müssen Javascript aktivieren!!!</b></noscript>
<script type="text/javascript" src="JS/register.js"></script>
<script type="text/javascript" src="JS/Form_Error.js" ></script>
<span class="sys_Error" id="Form_Error">&nbsp;</span>

<form action="not_form.php" method="post" class="register" name="register">
<table class="Form">
<tr>
<td>Vorname:</td>
<td>
<input type="text" name="Data[]" id="0"/><span class="sys_hidden" id="reg_Firstname">Vorname darf nur A-Z und ´` enthalten</span>
</td>
</tr>
<tr>
<td>
Nachname:
</td>
<td>
<input type="text" name="Data[]" id="1"/><span class="sys_hidden" id="reg_Lastname">Nachname darf nur A-Z und ´` enthalten</span>
</td>
</tr>
<td>
Strasse:
</td>
<td>
<input type="text" name="Data[]" id="2"/><span class="sys_hidden" id="reg_Street">Straße darf keine Sonderzeichen enthalten</span>
</td>
</tr>
<tr>
<td>
PLZ
</td>
<td>
<input type="text" name="Data[]" id="3"/><span class="sys_hidden" id="reg_PLZ">PLZ müssen 5 Zahlen sein</span>
</td>
</tr>
<tr>
<td>
Stadt
</td>
<td>
<input type="text" name="Data[]" id="4"/><span class="sys_hidden" id="reg_City">Stadt darf nur Buchstaben enthalten</span>
</td>
</tr>
<tr>
<td>
Email:
</td>
<td>
<input type="text" name="Data[]" id="5"/><span class="sys_hidden" id="reg_Email">Email ist falsch</span>
</td>
</tr>
<tr>
<td>
Benutzername:
</td>
<td>
<input type="text" name="Data[]" id="6"/><span class="sys_hidden" id="reg_Username">Muss mind. 5 Zeichen haben, darf keine Sonderzeichen enthalten!</span>
</td>
</tr>
<tr>
<td>
Passwort
</td>
<td>
<input type="password" name="Data[]" id="7"/><span class="sys_hidden" id="reg_Password"></span>
</td>
</tr>
<tr>
<td>
Passwort wiederholen
</td>
<td>
<input type="password" name="Data[]" id="8"/>
</td>
</table>
<input type="button" value="los" onclick="return send_form()"/>

</form>

'
;
?>
und hier die send_form Funktion:

Code:
function send_form()
{
    var check=check_form();
    Form_Error(Error);
    if(check!=false)
    {
        var reg_send="Fname="+document.getElementById(0).value+"&Lname="+document.getElementById(1).value;
        reg_send+="&Street="+document.getElementById(2).value+"&PLZ="+document.getElementById(3).value;
        reg_send+="&City="+document.getElementById(4).value+"&Email="+document.getElementById(5).value;
        reg_send+="&Uname="+document.getElementById(6).value+"&PW1="+document.getElementById(7).value;
        
        ro.open("post","Templates/register_sys.php");
        ro.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        ro.onreadystatechange=statehandler;
        ro.send(reg_send);
    }
    
}
check_form und Form_Error sind glaube ich unwichtig(sind nur nen paar repexp und Fehlermeldungen.

Ich verstehe nicht wie man das Formular ohne JS absenden könnte, ausser nen fakeformular an register_sys.php zu senden.
Mit Zitat antworten
  #14 (permalink)  
Alt 04-12-2009, 19:34
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Pums Beitrag anzeigen
Ich verstehe nicht wie man das Formular ohne JS absenden könnte, ausser nen fakeformular an register_sys.php zu senden.
Dazu würde es wohl schon reichen, einfach die action des Formulars auf register_sys.php zu ändern (bspw. mit Firebug).


Gewöhne dir einfach ab, bei der serverseitigen Verarbeitung an Dinge wie „Webseite”, „Formular” oder „Browser” zu denken. Du weisst nicht, ob überhaupt auch nur eines dieser Dinge im Spiel war.
Alles, was du weisst, ist, dass ein Request deinen Server erreicht hat, und jetzt vom Server verarbeitet werden will - und das unter Beachtung der notwendigen Sicherheitsmaßnahmen. Sonst weisst du nichts - was aber auch nichts macht, denn alles andere ist komplett uninteressant.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #15 (permalink)  
Alt 04-12-2009, 19:40
Pums
 Registrierter Benutzer
Links : Onlinestatus : Pums ist offline
Registriert seit: Oct 2009
Beiträge: 12
Pums befindet sich auf einem aufstrebenden Ast
Standard

Ok, danke.
Also sollte ich jeden Eingang am Server so behandeln als ob er frisch aus der Druckerpresse kommt(also total ungeprüft, von überall und jeden kommen könnte).

JS könnte ich einfach nur nutzen um das ganze besser aussehen bzw. wirken zu lassen.

Hab ich das richtig verstanden?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Formular oder HTML Formular gesucht ne0rsWorld Projekthilfe 0 03-02-2009 21:42
AJAX - formular Variable übergeben? Gamer20 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 4 14-08-2007 18:52
prob bei dyn. formular mit ajax extr3m0 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 5 02-07-2007 18:55
AJAX: Formular Peter_Panther HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 2 20-02-2007 16:07
[AJAX] Formular .elementrio HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 9 07-11-2006 16:37

Themen-Optionen
Thema bewerten
Thema bewerten:

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

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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:44 Uhr.