Doe Lösung deines Problems wäre noch ganz schön um nachträgliche Threadleser nicht vor unvollständige Tatsachen zu stellen :wink:
Beiträge von Basi
-
-
Nennen kannst du das Ganze wie du willst, aber ich finde DragBox logisch, da es eine verschiebbare (dragable) Box ist

-
-
Schau mal, ich habe schon mal einen Beitrag dazu geschrieben, die einfachste Lösung:
Zitat von "Basiii"Für die verschiebbare Box mache ich dir jetzt gleich ein Beispiel, das mit dem Account Dingsi kann ich mir leider nicht angucken.
Hier mal der Quellcode:
HTML
Alles anzeigen<!doctype html> <html> <head> <title>Titel</title> <meta charset="ISO-8859-1" /> <meta name="description" content="" /> <meta name="author" content="" /> <meta name="keywords" content="" /> <style type="text/css"> div#dragBox { position: absolute; top: 50px; left: 50px; width: 130px; background-color: #000000; cursor: move; } div#dragBox h3 { margin: 0; height: 25px; padding: 0; color: #F0F0F0; font-size: 14px; font-weight: bold; text-align: center; line-height: 25px; } div#dragContBox { margin: 2px; background-color: #C0C0C0; padding: 5px; font-size: 12px; cursor: default; } </style> <script language="javascript" type="text/javascript"> var dragEle = null; var eleX = 0; var eleY = 0; var mouseX = 0; var mouseY = 0; document.onmousemove = move; document.onmouseup = dragStop; function dragStart(element) { dragEle = element; eleX = mouseX - dragEle.offsetLeft; eleY = mouseY - dragEle.offsetTop; } function dragStop() { dragEle=null; } function move(dragEvent) { mouseX = document.all ? window.event.clientX : dragEvent.pageX; mouseY = document.all ? window.event.clientY : dragEvent.pageY; if(dragEle != null) { dragEle.style.left = (mouseX - eleX) + "px"; dragEle.style.top = (mouseY - eleY) + "px"; } } </script> </head> <body> <div id="dragBox" onmousedown="dragStart(this);"> <h3>Überschrift</h3> <div id="dragContBox"> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes. </div> </div> </body> </html> -
Von Tutorials lässt man grundsätzlich die Finger.
Selber bauen ist die Devise!
Wenn jeder Entwickler auf der Welt nach einem Tutorial gehen würde, dann brauche ich keine 2 Stunden um das System zu knacken!
Setz dich hin, überlege was du brauchst, stelle es zusammen und fertig, niemals einfach blind nachbauen, erst recht nicht wenn es um Sicherheit geht!!
-
Natürlich gibt es noch viele andere Wege z.B. ein Formular anzusprechen oder den Event Handler zu vermeiden, aber das war hier nicht gefragt.
-
Das wäre ein Weg:
Code
Alles anzeigen[...] <body onload="document.getElementById('passwort').type = 'text';"> <form action="" method="post"> <fieldset> <legend>Bitte Einloggen</legend> <label><input type="text" name="benutzername" value="Benutzernamen..." /></label> <label><input type="password" id="passwort" name="passwort" value="Passwort..." /></label> <!-- id wegen javascript --> <input type="submit" name="button" value="Einloggen!" /> </fieldset> </form> </body> </html> -
Beim Login:
PHP<span class="syntaxdefault"><?php<br /> </span><span class="syntaxcomment"># MySQL select, Abfrage für Name, ID und Rechte<br /></span><span class="syntaxdefault"> $if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault"> </span><span class="syntaxcomment">/* DATEN KORREKT */</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'login'</span><span class="syntaxkeyword">]</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> true</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'benutzername'</span><span class="syntaxkeyword">]</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $tabelle</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'benutzername'</span><span class="syntaxkeyword">];<br /></span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'id'</span><span class="syntaxkeyword">]</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $tabelle</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'id'</span><span class="syntaxkeyword">];<br /></span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechte'</span><span class="syntaxkeyword">]</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $tabelle</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechte'</span><span class="syntaxkeyword">];</span><span class="syntaxdefault"> </span><span class="syntaxcomment"># 1 = Benutzer, 2 = Admin<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault">?><br /></span>Auf der Seite:
PHP<span class="syntaxdefault"><?php<br /> if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">1 </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechte'</span><span class="syntaxkeyword">]):<br /></span><span class="syntaxdefault">?><br /></span> Ausgabe für Benutzer<br /><span class="syntaxdefault"><?php<br /> endif</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">2 </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechte'</span><span class="syntaxkeyword">]):<br /></span><span class="syntaxdefault">?><br /></span> Ausgabe für Admins<br /><span class="syntaxdefault"><?php<br /> endif</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">?><br /></span> -
Und worin unterscheidet sich deine Lösung jetzt von unseren Vorschlägen? Prüfen ob überhaupt was gesendet wird, wenn nein auf Index verweisen, wenn doch prüfen ob Datei existiert, wenn ja auf Datei verweisen, wenn nein auf 404 verweisen?
-
Auf jeden Fall ist die Seite ein echt schlagkräftiges Argument :mrgreen: :mrgreen:
-
Für mich ist die Sache durch, hier solltest du anfangen. Deine Lösung dort beinhaltet alles was wir dir hier vorgeschlagen haben, bitte melde dich erst wieder wenn du überhaupt verstehst was du da programmierst oder wenn du Hilfe beim Verstehen brauchst.
Zitat von "NiGHTCORE"Nur ist dies mit der Arry Funktion, die Arrys kriege ich iwie nicht weg ohne nen Syntex error kann mir da jemand was machn?
Ohne den Code den du umgeschrieben hast oder eine Fehlermeldung können wir dir wohl schlecht helfen, siehe hier, Unterpunkt "Beitragserstellung" (hast du beim registrieren gelesen und bestätigt).
-
Das ist schwer zu erklären, und auch schwer einzuschätzen.
md5 ist keine Verschlüsselung, sondern eine Funktion die einen Hash Wert erstellt. Genaueres kannst du hier nachlesen.
P.S.: md5 hat keinen Algorythmus, das ist sein Geheimnis

-
md5 ist gut, aber eben nicht einfach nur md5 aufs Passwort und fertig, sondern wie in meinem Beispiel

-
Und deine User hassen aufgezwungene Sounds

Ja Einstellungen ist auch okay :mrgreen:
-
Sei zumindest so gut und frag vorher in einem PopUp ob der User das okay findet.
-
Worin besteht das Problem einfach das gesamte Verzeichnis auszulesen und dann per is_dir zu prüfen ob ein Unterverzeichnis vorhanden ist und dieses dann auch einfach auszulesen?
Ungefähr so:
PHP<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /><br /> $handler </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> opendir</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">__DIR__</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> while</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">false </span><span class="syntaxkeyword">!==</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> readdir</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$handler</span><span class="syntaxkeyword">)))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">is_dir</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> print </span><span class="syntaxstring">"<p>$file ist ein Verzeichnis!</p>"</span><span class="syntaxkeyword">;<br /> else<br /> {<br /> </span><span class="syntaxdefault">$zerlegung </span><span class="syntaxkeyword">= </span><span class="syntaxdefault">explode</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'.'</span><span class="syntaxkeyword">, </span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">);<br /> print </span><span class="syntaxstring">"<p>$file ist eine ."</span><span class="syntaxkeyword">. </span><span class="syntaxdefault">$zerlegung</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">count</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$zerlegung</span><span class="syntaxkeyword">) - </span><span class="syntaxdefault">1</span><span class="syntaxkeyword">] .</span><span class="syntaxstring">" Datei</p>"</span><span class="syntaxkeyword">;<br /> }<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /><br /></span><span class="syntaxdefault">?><br /></span></span> -
Existiert in JavaScript an sich aber nicht, vielleicht hat da auch ein Google Entwickler Mist gebaut, sich vertan, oder wollte einfach nur einen Gag einbauen.
-
Nichts, ich wiederhole: NICHTS nervt User mehr als wenn im Internet ohne ihr Zutun und ihre Genehmigung auf einmal ein Ton ertönt.
-
Eure Überwachungstheorien finde ich irgendwie mehr als nur lächerlich..
Eine Verbindung abhören, da gehört mehr zu als zu wissen was eine IP ist!
Leute die das Wissen haben so etwas zu bewerkstelligen sind absolut nicht daran interessiert irgendwelchen unkommerziellen Projekten zu schaden.
Das selbe gilt für das Abfangen von E-Mails, das macht man nicht mit einem kleinen Programm das man sich aus dem Internet runterlädt, da gehört mächtig viel Wissen dazu, also mal immer halblang.
Aber um mal einen Lösungsweg gegen Verschwörung, Abhörung und sonstigen Attacken im Internet:
Wer ein Passwort einfach durch die md5 Funktion jagt und es dann speichert ist doch selber Schuld an seiner mangelnden Sicherheit, es gibt so viele tolle Wege Dinge zu verändern so das selbst beim Entschlüsseln mit einer Regenbogentabelle nur Müll heraus kommt, ein Beispiel:
Wir bekommen aus dem Formular unter Anderem einen Benutzernamen und ein Passwort:
PHP<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /> $benutzername </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'benutzername'</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> $passwort </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'passwort'</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault">?></span> <br /></span>Wie würde man nun normal vorgehen? Richtig:
PHP<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /> $passwort_verschluesselt </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> md5</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$passwort</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment"># Eintragen in die Datenbank<br /></span><span class="syntaxdefault">?><br /></span></span>Hmm.. gut! Angenommen ich komme über einige Umwege an den Datenbankeintrag, nehmen wir an der Benutzer wählt als Passwort geheim, ich sehe den String: e8636ea013e682faf61f56ce1cb1ab5c
Meine Regenbogentabelle hat ungefähr 10 Minuten gesucht, und schon sehe ich: Das Passwort lautet geheim.. Aww.. schade aber auch was?Warum sah die Verschlüsselung nicht so aus:
PHP<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /> $erkennungsmerkmal </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">"IcH 4 biN EiNe z3ich3nk3TTe, weLchE 7 keInEn SinN erGibT... toTe kazze!"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> $passwort_verschluesselt </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> sha1</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">strrev</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">md5</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$benutzername</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">.</span><span class="syntaxdefault"> md5</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$erkennungsmerkmal</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">.</span><span class="syntaxdefault"> md5</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$passwort</span><span class="syntaxkeyword">)));</span><span class="syntaxdefault"> <br />?></span> <br /></span>Als Ergebnis erhalten wir: d11b24028c2b3dfcc21bfcf3df4655a7ef09c4a2 Hier fehlt mir die passende Tabelle, aber ich bezweifel stark das dieser String überhaupt eingetragen wäre, schließlich wurde folgendes gehasht:
Codec5ba1bc1ec65f16faf286e310ae6368e49b7a31e11c23edfad6d791c05f05dc4f283358bc9ea967d3b77fa7241b59af6Beim besten Willen, das steht in keiner Regenbogentabelle! Und selbst wenn, wie entschlüssel ich das jetzt? Woher soll ich jetzt wissen das das 3 md5 Hashwerte am Stück sind, aber auch noch umgekehrt? Also lasse ich es gut sein..
Dadurch das wir $erkennungsmerkmal in unserer Datei haben, können wir den Login genau so auswerten.
Zitat von "Der Erklärbär"Die Regenbogentabelle
Eine Regenbogentabelle ist eine riesige Tabelle, in der entschlüsselte Strings eingetragen sind, das sieht in etwa so aus:
So lassen sich eigentlich nicht entschlüsselbare Strings doch entschlüsseln.Eine verwertbare Regenbogentabelle ist ungefähr 2 Terrabyte (2000 Gigabyte, was ca. 2.000.000.000.000 Zeichen sind) groß.
-
onfocusout ?
Was ist das? Gibt es nicht..
Okay ich habe gelogen: Gibt es, heißt onblur.