HX3 Foren

HX3 Foren (https://hx3.de/)
-   Software- und Webentwicklung (https://hx3.de/software-webentwicklung-23/)
-   -   Mehrfachauswahl Loginscript (https://hx3.de/software-webentwicklung-23/mehrfachauswahl-loginscript-12334/)

Garry 19.04.2006 14:19

Mehrfachauswahl Loginscript
 
Hi,

für euch ist das sicherlich ein Kinderspiel, jedoch komme ich irgendwie nicht weiter bei meinem Loginscript (das mal eins werden soll!).

Ich habe folgende Datei:

Code:

<p class="uclogin">
  <b>Login Usercontrol</b>
  <br>
  <br>
  <br>
  <br>
  <b>Name:</b>
  <br>
  <form method="post" action="usercontrol.php">
  <select size="1" name="D1">
  <option value="1" style="background-color: #F97171">Name1</option>
  <option value="2" style="background-color: #F97171">Name2</option>
  <option value="3" style="background-color: #F97171">Name3</option>
  </select>
  <b>Passwort:</b>
  <br>
  <input type="passwort" name="passwort" style="background-color: #F8F6F6">
  <input type="submit" value="Senden" name="los">
  </form>
</p>

Also der entsprechene Auszug..

Und da habe ich ja 3 Namen in der Auswahl (pull down menu).

Doch wie bekomme ich das jetzt hin, dass auf der nächstgelegenen Seite, die usercontrol.php er genau die 3 Namen mit dem dazugehörigen Passwort überprüft? :confused:

Gruß Garry

boonz 19.04.2006 17:45

AW: Mehrfachauswahl Loginscript
 
Die Sachen sind im POST-Array gespeichert wenn du das meinst?

Garry 19.04.2006 19:10

AW: Mehrfachauswahl Loginscript
 
Naja, also mein Problem ist eben wie gesagt ich weiss nicht wie ich die verschiedenen Benutzernamen mit verschiedenen Passwörtern vergleiche. Eine einfache Passwortabfrage ist ja kein Problem, aber die mehrfache! :komisch:

Snevsied 19.04.2006 19:24

AW: Mehrfachauswahl Loginscript
 
wieso fragst du erstmal nicht welcher name ausgewählt wurde und dann prüfst du für diesen namen einfach das passwort.

boonz 19.04.2006 20:06

AW: Mehrfachauswahl Loginscript
 
Zitat:

Zitat von Garry
Naja, also mein Problem ist eben wie gesagt ich weiss nicht wie ich die verschiedenen Benutzernamen mit verschiedenen Passwörtern vergleiche. Eine einfache Passwortabfrage ist ja kein Problem, aber die mehrfache! :komisch:

Meinst du sowas:

PHP-Code:


<?php
if (($name1==$passwort1) OR ($name1==$passwort2)) {
echo 
"Boah, is das toll!";
} else {
echo 
"Boah, das is aber gar nicht toll!";

?>


Garry 19.04.2006 20:21

AW: Mehrfachauswahl Loginscript
 
Jaaa genau bloß als 3 :D

Habe immer mit AND gedacht, aber da wäre das ja total blöd..

Kann ich das dritte hinten ranhängen?

Garry 19.04.2006 20:28

AW: Mehrfachauswahl Loginscript
 
Und wie verknüpfe ich das jetzt mit meiner naviusercontrol.php ? :komisch: (sorry aber ich stehe gerade mächtig aufm schlauch)

Code:

<p class="uclogin">
  <b>Login Usercontrol</b>
  <br>
  <br>
  <br>
  <br>
  <b>Name:</b>
  <br>
  <form method="post" action="usercontrol.php">
  <select size="1" name="D1">
  <option value="1" style="background-color: #F97171">Garry</option>
  <option value="2" style="background-color: #F97171">Mega AG</option>
  <option value="3" style="background-color: #F97171">Useradmin</option>
  </select>
  <b>Passwort:</b>
  <br>
  <input type="passwort" name="passwort" style="background-color: #F8F6F6">
  <input type="submit" value="Senden" name="los">
  </form>
</p>


Atomic 19.04.2006 20:49

AW: Mehrfachauswahl Loginscript
 
Überprüfen ob die Benutzerdaten stimmen ist ja nur einerlei.
Herausfordernd wird es erst wenn es darum geht den Benutzer über mehrere Seiten hinweg angemeldet zu halten bei möglichst geringem Sicherheitsrisiko.

Hier mein Beitrag zum Thema "Sichere Benutzer-Authentifizierung":

Wir haben eine Tabelle für die Benutzerdaten und eine Tabelle für die "Sessions".
In der Usertabelle speichern wir:
- Username
- E-Mail
- Passwort ( ABER EINWEG-VERSCHLÜSSELT !!! )
- ID (Jede Tabelle sollte eine haben! Warum eine ID? Google im Internet!)

Dann haben wir ein Login-Formular.
Dort gibt es ein Feld für Benutzername und ein Feld für Passwort.
Außerdem eine Checkbox für "Dauerhaft eingeloggt bleiben?".
Und ein Link "Lost passwort".

Der Benutzer logt sich ein in dem er sein Passwort eingibt + Benutzername
Daraufhin wird überprüft ob der Benutzer existiert und wenn ja wird wird das eingegebene Passwort EINWEG-VERSCHLÜSSELT und mit dem bereits verschlüsselten Passwort in der Usertabelle in der Zeile des Benutzers verglichen.

Wollte der Benutzername falsch sein wird nicht ausgegeben "Falscher Benutzername" sondern "Benutzername ODER Passwort ungültig". Das ist ABSICHT.

Hast der Benutzer die Checkbox "Dauerhaft eingeloggt bleiben?" angeklickt so wird das Passwort in verschlüsselter Form als Cookie auf dem Rechner des Benutzers abgelegt.

Sollte er es nicht abgelegt haben so wird eine Zeichenkette genannt "Session-ID" erzeugt, welche in der Sessiontabelle abgelegt wird zusammen mit den Informationen User-ID (um zu wissen wlecher eintrag in der usertabelle), IP-Adresse (damit der benutzer nicht "versehentlicht" seine Session-ID irgendwo in einem forum oder so postet) und der Zeit an dem der benutzer zum letzten mal eine Seite aufgerufen hat.
.... an dieser Stelle verweise ich dich auf das Internet.. es gibt tonnenweise Artikel über User Authentication mit Session-ID

Natürlich sind beide Methoden nicht sicher.
IP-Adressen lassen sich genauso fälschen wie Cookies abgefangen werden können.
Anmerkung: Die Cookie Methode ist um einiges unsicherer, wenngleich auch bequemer

Die Sicherheit entsteht erst dadurch das nie das Passwort gspeichert wird.
Sollte jemand auf den Account zugriff bekommen hat er nur solange zugriff bis die session-id abläuft oder der Benutzer sien Passwort ändert.

Warum?
Weil man zum ändern des Passwortes das alte angeben muss.

Und was macht man wenn man es vergessen hat?
Dann klickt man auf den Link "Lost Passwort" und gelangt zu einem Formular mit den Feldern
- Username
- E-Mail
(theoretisch reicht e-mail oder username, aber wenn man den benutzer vor unnötig e-mail spam schützen will macht man es besser so umständlich wie möglich.. hier setzen auch einige websites mit der "Sicherheitsabfrage" nach)

Daraufhin bekommt der Benutzer ein neues Passwort zugeteilt.

Warum nicht das alte?
Weil es nirgendwo hinterlegt ist. Gespeicht wurde ja nur das verschlüsselte.

Das ist auch wichtig damit die Accounts geschützt bleiben sollte jemand die Datenbank hacken.

==================

Bevor du loslegst mal dir bitte zuerst mit Hilfe einer Software wie DIA auf wie das ganze funktionieren soll!
So geht das: http://de.wikipedia.org/wiki/Programmablaufplan

Garry 19.04.2006 21:09

AW: Mehrfachauswahl Loginscript
 
Mhh.. sehr schöner Text!

Aber mir fehlt die Praxis!

Hast du vielleicht einen sehr guten Link dazu?

Und wofür die anderen 2 Links?

Programmabläufe.. wofür?! :confused:

Atomic 19.04.2006 21:53

AW: Mehrfachauswahl Loginscript
 
Zitat:

Zitat von Garry
Programmabläufe.. wofür?! :confused:

Weil ich mir gern doppelte Arbeit mache?
Ha ha.. selten so gelacht.

Hier die wichtigsten Gründe:
  1. Hilft beim verstehen/analysieren, planen und verbessern von Abläufen
  2. Kein Programmierer auf der Welt ist so perfekt das er keine Denkfehler macht.
    Und wenn du einen Denkfehler im Design/Architektur deiner Anwendung hast, ist der Spaß vorbei. Das ist der Moment wenn du plötzlich merkst dass das von dem du eben noch fest überzeugt warst in Wirklichkeit garnicht funktionieren kann weil ______________ .
    Und dann.. dann wird in der Regel herumgestochert. Man versucht IRGENDWIE dafür zu sorgen das die Arbeit nicht für umsonst war.

    Das so kein sauberes Produkt herauskommt brauch ich wohl nicht weiter zu erleutern.
  3. Ein Diagramm liest sich leichter als Quellcode
  4. Mit dem Ablaufplan kann weitergearbeitet werden

Und du kommst ohne klar? Ja?
Das liegt bestimmt daran das du nach praktischen Beispielen fragst?
Willst du eine eigenes System entwickeln (das schliest das "verstehen" mit ein) oder ein bestehendes System verwenden?

Entweder oder.
An deiner Stelle würde ich mir die Arbeit sparen und ein bestehendes System nehmen.

Garry 19.04.2006 22:01

AW: Mehrfachauswahl Loginscript
 
Ne, ich will es ja lernen. Aber wozu das Programm?

Kann man sich das nicht selber skizziren?

Nutzt du den selber?

Atomic 19.04.2006 23:02

AW: Mehrfachauswahl Loginscript
 
Editieren geht einfacher mit solch einer Software.
Man schnapt einfach den falschen Strang und zieht ihn dort hin wo er hingehört.
Oder mal Copy&Paste ...

(...)

Snevsied 20.04.2006 10:19

AW: Mehrfachauswahl Loginscript
 
@garry
man muss das nicht unbedingt mit if machen, es gibt auch andere schleifen.

bessere wäre da eine swith-case schleife. je nach dem was du empfängst, wechselst du in den entsprechenden block.


Code:


switch(name)
{
case 'name1': bla1
case 'name2': bla2
case 'name3': bla3
...
}

edit:
@Atomic
du gibts Garry zwar einiges Hintergrundwissen, aber du hilfst ihm kein bisschen bei seinem Problem ;)

Garry 20.04.2006 23:18

AW: Mehrfachauswahl Loginscript
 
Zitat:

Zitat von Snevsied
@garry
man muss das nicht unbedingt mit if machen, es gibt auch andere schleifen.

bessere wäre da eine swith-case schleife. je nach dem was du empfängst, wechselst du in den entsprechenden block.


Code:


switch(name)
{
case 'name1': bla1
case 'name2': bla2
case 'name3': bla3
...
}

edit:
@Atomic
du gibts Garry zwar einiges Hintergrundwissen, aber du hilfst ihm kein bisschen bei seinem Problem ;)

Das ist doch schonmal was!

Das hilft mir schonmal um einiges weiter. Jedoch liegt mein Hauptproblem darin, dass ich nicht weiss wie ich die verschiedenen Namen in der naviusercontrol.php definieren muss?! Beim Attribut name in dem value Befehln schlägt der HTML Validator nämlich Alarm!

Snevsied 21.04.2006 09:50

AW: Mehrfachauswahl Loginscript
 
wie es dann das ganze genauer abläuft, kann ich dir nicht sagen, kann kein php bzw. html!

edit:
http://www.webmaster-resource.de/tri...t-sessions.php
http://www.webmaster-resource.de/tri...-und-mysql.php

vielleicht hilft dir das weiter.

Atomic 23.04.2006 10:23

AW: Mehrfachauswahl Loginscript
 
Zitat:

Zitat von Garry
Jedoch liegt mein Hauptproblem darin, dass ich nicht weiss wie ich die verschiedenen Namen in der naviusercontrol.php definieren muss?! Beim Attribut name in dem value Befehln schlägt der HTML Validator nämlich Alarm!

Verstehe ich nicht.
Kannst du den Quellcode hier hinein kopieren inkl. Fehlermeldung?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119