Formular passwort abfrage

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Formular passwort abfrage

    Hi Leute, hab mal wieder eine Frage... :S

    Vorne weg, ich würde das gerne in JS lösen (falls das überhaupt möglich ist) und nicht mit php :P

    Ich hab hier eine Seite, die nur über das Firmeninterne Intranet :D zu erreichen ist.

    Auf der Seite können der Datenbank kunden hinzugefügt werden, Kundendaten geändert werden etc und eben auch Kunden gelöscht werden.
    Ein bestimmter Kreis von Mitarbeitern loggt sich auf diese Seite ein und darf eben rumpfuschen :).

    Allerdings sollen nur ein paar Mitarbeiter aus diesem Kreis berechtigt sein, Kunden und andere Daten komplett zu Löschen.

    Man wählt die Kundennummer aus und drückt auf Löschen. Jetzt Popt ein alert auf wo man "Wirklich Löschen? Ja [ ] Nein [ ]" auswählen muss.
    Diesen alert würde ich gerne durch eine Passwortabfrage ersetzen. Das PW soll nicht in der DB gespeichert werden oder so, sondern "nur" im script hinterlegt sein.

    Klickt der User also auf "Löschen" soll ein Passwortfenster aufpoppen, indem man eben ein Passwort eingibt. Ist das Pw korrekt wird gelöscht, falls nicht Pech gehabt.

    Ist das mit JS möglich?

    Falls nein, schreib ich was in php, wollte eben so ein alert haben und nicht erst auf ne Passwortabfrageseite.php weiterlieten, die dann erst nach dem Passworteingeben das Formular verarbeitet.


    schonmal Danke im Vorraus


    grüße
    Timo
    ----[Blockierte Grafik: http://www.smilie-harvester.de/smilies/Alltag/putzen.gif] Nein ich bin nicht die Signatur, ich Putz hier nur ---
  • Ich habe zwar keine Ahnung von JS aber ich denke mal das alert ist ja sowieso fast nur mit JS möglich und das mit der Abfrage sollte auch mit JS klappen :P!

    Allerdings wenn du das Passwort als Klartext im Skript speicherst kann eig jeder drauf zugreifen vorallem wenn es auf der einen Seite steht auf welcher man grad dann drauf ist (müsste man nur im Quelltext nach schauen).

    Wobei du kannst das Passwort ja erst als md5 umkonventieren mit einem Tool und den md5 String im Skript speicherst. Sobald man dann das PW eingibt sollte es in md5 umkonventiert werden und überprüft werden ob es richtig ist.

    Tut mir Leid, leider kann ich dir beim Skript da selbst nicht helfen. Aber nur so nebenbei als Tipp wollte ich das sagen.
  • Hi Illidan,

    das mit dem Klartext bin ich mir bewusst, das script soll auch nicht direkt im Quelltext stehen sondern im Ordner "/scripte/checkpw.js" oder so ähnlich. Und da die Mitarbeiter die die Datenbank bearbeiten dürfen schon froh sind überhautpt den IE zu öffnen ist das auch das kleinste Problem. Selbst wenn jemand das PW "hacken" sollte, wird in der DB geloggt wer was wann gemacht hat. Und dann gibts mecker :P

    Ich erwarte jetzt auch kein fertiges script sondern eher Stichworte oder kleine Codeschnipsel woran ich mich orientieren kann. Hab leider nichts dergleichen im Netz gefunden...
    grüße
    ----[Blockierte Grafik: http://www.smilie-harvester.de/smilies/Alltag/putzen.gif] Nein ich bin nicht die Signatur, ich Putz hier nur ---
  • mit javascript und php geht das so:

    Quellcode

    1. <a onclick="return confirm('sicher?')" href="delete.php?id=5">delete</a>


    und mit ajax (ohne neuladen der seite) etwa so:

    Quellcode

    1. <script type="text/javascript">
    2. function ajaxconfirm(text) {
    3. var r = confirm(text);
    4. if(r) {
    5. var req;
    6. try {
    7. req = window.XMLHttpRequest?new XMLHttpRequest():
    8. new ActiveXObject("Microsoft.XMLHTTP");
    9. } catch (e) {
    10. //Kein AJAX Support
    11. }
    12. req.open('delete.php?id=5');
    13. req.send(null);
    14. }
    15. return false;
    16. }
    17. </script>
    18. <a onclick="return ajaxconfirm('sicher?')" href="delete.php?id=5">delete</a>
    Alles anzeigen
  • Ja so in der Art hab ichs ja. Also so siehts bisher aus:

    Quellcode

    1. function confirmSubmit()
    2. {
    3. var agree=confirm("Sind sie sicher, dass der Kunde gelöscht werden soll?");
    4. if (agree)
    5. return true ;
    6. else
    7. return false ;
    8. }


    Quellcode

    1. <input onClick="return confirmSubmit()" type="submit" name="Anzeigen" value="löschen"></td>


    Das hätte ich eben gerne durch eine Passwortabfrage ersetzt. D.h ein alert fenster wo man das PW eingibts und auf o.K drückt. Ist das PW richtig wird der Kunde gelöscht, ansonsten nicht.
    ----[Blockierte Grafik: http://www.smilie-harvester.de/smilies/Alltag/putzen.gif] Nein ich bin nicht die Signatur, ich Putz hier nur ---
  • Also ich würde bevor man auf die Seite mit der Löschoption kommt prüfen ob der Nutzer die passenden Rechte hat, und je nachdem die Seite aufbauen.

    Ansonsten würde es sicher auch via Ajax gehen:

    Quellcode

    1. <input name="DELETE" onClick="loeschen()" type="button">
    2. <div id='PasswortAbfrage' style='display:none;position:absolute;top:y,left:x'>
    3. <input id="password">
    4. <input type="button" onClick="CheckPassword()"
    5. </div>

    Quellcode

    1. function loeschen(){
    2. dokument.getElementById('PasswortAbfrage').style.display = 'block';
    3. }
    4. function CheckPassword(){
    5. var pw = dokument.getElementById('password').value;
    6. //An eine Ajax.php senden, die sich das Passwort z.B. aus der Datenbank holt und 'true' oder 'false' returned
    7. }
  • Für Texteingabe bietet JavaScript auch etwas. Das prompt -> de.selfhtml.org/javascript/objekte/window.htm#prompt

    Kein großer Unterschied in der Implementierung:

    Quellcode

    1. function ajaxconfirm(text, id) {
    2. var r = prompt(text, "");
    3. if(r) {
    4. var req;
    5. try {
    6. req = window.XMLHttpRequest?new XMLHttpRequest():
    7. new ActiveXObject("Microsoft.XMLHTTP");
    8. } catch (e) {
    9. //Kein AJAX Support
    10. }
    11. req.open('POST', 'delete.php?id='+id);
    12. req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    13. req.send('password='+r);
    14. }
    15. return false;
    16. }
    Alles anzeigen