Login - Dein Profil ?

Nohh

Erfahrenes Mitglied
Hallo liebe User und Userinnen,
ich möchte ein Portal für meine Schulklasse bauen, in der die Nutzer kommunizieren können. Vorrausetzung dafür ist aber, das ich für jeden User ein eigenes Portal baue.
Folgendes:

Ich erstelle eine Loginseite mit
Benutzer:
Passwort:
und der Schaltfläche
Login
Die Daten bekommt der User von mir also ein Test:
Marcel aus meiner Klasse möchte eine eigene Ebene. Ich erstelle Sie folgendermaßen:
Benutzer: Marcel1
Passwort: BlaBla
Also das heißt, ich möchte nicht das er dann einfach auf eine einfache PHP Seite weitergeleitet wird, die jeder aufrufen kann. Mir gehen jetzt die Ideen aus dies weiter zu beschreiben. Ich versuche es mal!
Also ich habe im enteffekt 20 Nutzer. Für Jeden erstelle ich ein Benutzer und ein Passwort. in eine Datenbank?
Jeder soll seine eigene Seite haben. Das heißt:
Hallo, Marcel
Du hast 1 neue Nachricht von Susanne !
Des weiteren kommt das die Personen vielleicht sogar Dateien tauschen können. Aber egendwie brauch ich da doch ein Upload-Formular oder?
Naja ich hoffe es ist verständlich. Vielelicht hat einer Lust und Zeit mit mir das mal durchzugehen.
Ich bedanke mich. Und vielleicht weiß jemand wie ich soetwas in PHP erstelle und welche Befehle nötig sind.


Gruß
Pascal
 
also du kümmerst dich um zu viele Probleme auf einmal ^^
fang doch einfach mal mit dem Login an.
HTML:
               <form action='login.php' method='post'>
                 <input type='text' name='login_nick' ><br>
                 <input type='password' name='login_pass' ><br>
                 <input type='submit' value='Login'><br>
               </form>
das Teil packst du z.B. auf der seite direkt in die mitte ^^
damit leitest du den user auf eine weiter php seite die in diesem fall "login.php" heißt. Natürlich kannst du alles in eine Datei schreiben aber dann verlierst du den Überblick ^^
In dieser Datei vergleichst du dann ob der Username mit dem Passwort übereinstimmt.
Wenn das der Fall ist wir man wieder auf die Hauptseite weitergeleitet wo dann anstatt des Logins ein Menü für den User bereitsteht das natürlich NUR da ist wenn der User angemeldet ist!

Mit den Nachrichten ist das eigentlich ganz einfach:
Mach eine Tabelle: id,von,an,betreff,text,gelesen
dann fragst du für den user ab "WHERE an='[user]'" und schon werden alle nachrichten an den User angezeigt. Um herrauszufinden welche nachrichten neu sind ist das feld "gelesen" da ist dorch z.B. eine 1 drin ist die nachricht gelesen.

Mit den dateien ist das nicht viel anders! solltest du dazu noch spezielle fragen haben einfach im Forum suchen nach "Dateiupload".
 
Hallo,
ok, das habe ich jetzt gemacht eine seite mit login und jetzt das eigentliche. Ich habe es mal versucht, aber egendwie geht es nicht ^^
index.php
Code:
<form action='login/login.php' method='post'>
<p><span class="Stil1">Benutzer:
<input type='text' name='login_nick' >
Kennwort:
<input type='password' name='login_pass' /> 
<input type='submit' value='Login'>
</form>
login.php
Das funktioniert leider nicht!
PHP:
<?
  if($HTTP_POST_VARS["text"] == "pascal" && $HTTP_POST_VARS["pw"] == "kennwort") { 
    header("Location: richtig-willkommen-pascal.php");
  }
  else {
    header("Location: login.php");
  }
?>

Gruß,
Pascal
also du kümmerst dich um zu viele Probleme auf einmal ^^
fang doch einfach mal mit dem Login an.
HTML:
               <form action='login.php' method='post'>
                 <input type='text' name='login_nick' ><br>
                 <input type='password' name='login_pass' ><br>
                 <input type='submit' value='Login'><br>
               </form>
das Teil packst du z.B. auf der seite direkt in die mitte ^^
damit leitest du den user auf eine weiter php seite die in diesem fall "login.php" heißt. Natürlich kannst du alles in eine Datei schreiben aber dann verlierst du den Überblick ^^
In dieser Datei vergleichst du dann ob der Username mit dem Passwort übereinstimmt.
Wenn das der Fall ist wir man wieder auf die Hauptseite weitergeleitet wo dann anstatt des Logins ein Menü für den User bereitsteht das natürlich NUR da ist wenn der User angemeldet ist!

Mit den Nachrichten ist das eigentlich ganz einfach:
Mach eine Tabelle: id,von,an,betreff,text,gelesen
dann fragst du für den user ab "WHERE an='[user]'" und schon werden alle nachrichten an den User angezeigt. Um herrauszufinden welche nachrichten neu sind ist das feld "gelesen" da ist dorch z.B. eine 1 drin ist die nachricht gelesen.

Mit den dateien ist das nicht viel anders! solltest du dazu noch spezielle fragen haben einfach im Forum suchen nach "Dateiupload".
 
Zuletzt bearbeitet:
PHP:
<?
  if($HTTP_POST_VARS["text"] == "pascal" && $HTTP_POST_VARS["pw"] == "kennwort") { 
    header("Location: richtig-willkommen-pascal.php");
  }
  else {
    header("Location: login.php");
  }
?>
So kann es auch nicht gehen , man sollte immer mit den Namen arbeiten , wie man die Text-Felde bzw. Pasword-Felder nennt .

In diesen Fall müste das eher so aussehen :
PHP:
<?
  if($HTTP_POST_VARS["login_nick"] == "pascal" && $HTTP_POST_VARS["login_pass"] == "kennwort") { 
    header("Location: richtig-willkommen-pascal.php");
  }else {
    header("Location: ../index.php");
  }
?>

mfg : hhunderter
 
Hi,
und jetzt brauch ich circa noch 9 accounts dazu ... aber das problem is das einer ja dann die seiten hacken kann, wenn jemand so einfach auf die seite kann.

PHP:
<?
  if($HTTP_POST_VARS["login_nick"] == "pascal" && $HTTP_POST_VARS["login_pass"] == "kennwort") { 
if($HTTP_POST_VARS["login_nick"] == "martin" && $HTTP_POST_VARS["login_pass"] == "kennwort2") {
if($HTTP_POST_VARS["login_nick"] == "marcel" && $HTTP_POST_VARS["login_pass"] == "kennwort3") { 
//// Könnte es so gehen?
    header("Location: richtig-willkommen-pascal.php");
    header("Location: richtig-willkommen-martinl.php");
    header("Location: richtig-willkommen-marcel.php");
  }else {
    header("Location: ../index.php");
  }
?>
Oder so?
PHP:
<?
  if($HTTP_POST_VARS["login_nick"] == "pascal" && $HTTP_POST_VARS["login_pass"] == "kennwort") { 
    header("Location: richtig-willkommen-pascal.php");
if($HTTP_POST_VARS["login_nick"] == "martin" && $HTTP_POST_VARS["login_pass"] == "kennwort2") {
    header("Location: martin.php");
if($HTTP_POST_VARS["login_nick"] == "marcel" && $HTTP_POST_VARS["login_pass"] == "kennwort3") {
    header("Location: marcel.php");
  }else {
    header("Location: index.php");
  }
?>
So funktionierts egendwie auch net ?mhhh
PHP:
<?
  if($HTTP_POST_VARS["login_nick"] == "pascal" && $HTTP_POST_VARS["login_pass"] == "kennwort") { 
    header("Location: richtig-willkommen-pascal.php");
if($HTTP_POST_VARS["login_nick"] == "martin" && $HTTP_POST_VARS["login_pass"] == "kennwort2") {
    header("Location: martin.php");
if($HTTP_POST_VARS["login_nick"] == "marcel" && $HTTP_POST_VARS["login_pass"] == "kennwort3") {
    header("Location: marcel.php");
  }else {
    header("Location: index.php");
  }else {
    header("Location: index.php");
  }else {
    header("Location: index.php");
  }
?>
 
Zuletzt bearbeitet:
Du machst dir damit nur viel zuviel Schreibarbeit ^^ Programierer sind faul und benutzen Schleifen die einen die abfragen vereinfachen .

Jetzt meine Frage : Hast du schon eine Datenbank angelegt mit den Benutzern und Kennwörtern ? (sql-Datenbank)

ps : noch ein Tipp achte auf die Groß- und Kleinschreibung , die im Board achten darauf ^^
 
Zuletzt bearbeitet:
Hi,
nein habe noch keine mysql - datenbank mit den passwärten und benutzern angelegt, aber kannst du mir das erklären?:-) bin noch eine art anfänger.
Wende Zeit und Lust dafür has tmir das zu erklärn :-)

MfG
Nohh

edit: ich hab die nacht durchgemacht ich kann froh sein wenn ich mich net vertippe :-)
 
Ich wuerde Dir dazu raten eine Seite fuer alle zu machen und dann einfach nur anhand des eingeloggten Users zu entscheiden welche Daten denn dargestellt werden sollen.

Mit Sessions und einer Datenbank laesst sich sowas ziemlich einfach machen.
Schau Dir hierzu am besten mal dieses Tutorial an.
Oops, zu spaet mit dem Tutorial im die Ecke gekommen. ;)
 
Hi,
das problem mit der tabelle erstellen hat sich erledigt! neues problem:

wo füge ich diesen php-code denn nun ein:
PHP:
<?php 
// Definition der Benutzer 
$benutzer[0]["Nickname"] ="admin"; 
$benutzer[0]["Kennwort"] = "admin"; 
$benutzer[0]["Nachname"] = "Mustermann"; 
$benutzer[0]["Vorname"] = "Max"; 

$benutzer[1]["Nickname"] = "test"; 
$benutzer[1]["Kennwort"] = "abc"; 
$benutzer[1]["Nachname"] = "Kunze"; 
$benutzer[1]["Vorname"] = "Martin"; 

// Sie können an dieser Stelle beliebig viele Benutzer anlegen. 
// Achten Sie dabei nur auf die Fortführung der Nummer. 

// Aufbau der Datenbankverbindung 
$connectionid  = mysql_connect ("localhost", "root", ""); 
if (!mysql_select_db ("LoginSystem", $connectionid)) 
{ 
  die ("Keine Verbindung zur Datenbank"); 
} 

// Zuerst alle Datensätze löschen um keine Dopplungen zu bekommen. 
mysql_query ("DELETE FROM benutzerdaten"); 

// Daten eintragen 
while (list ($key, $value) = each ($benutzer)) 
{ 
  // SQL-Anweisung erstellen 
  $sql = "INSERT INTO ".
    "benutzerdaten (Nickname, Kennwort, Nachname, Vorname) ".
  "VALUES ('".$value["Nickname"]."', '".
                       md5 ($value["Kennwort"])."', '".
                       $value["Nachname"]."', '".
                       $value["Vorname"]."')"; 
  mysql_query ($sql); 

  if (mysql_affected_rows ($connectionid) > 0) 
  { 
    echo "Benutzer erfolgreich angelegt.<br>\n"; 
  } 
  else 
  { 
   echo "Fehler beim Anlegen der Benutzer.<br>\n"; 
  } 
} 
?>

einfach unter die tabelle?
Code:
CREATE TABLE benutzerdaten (
  Id Int(11) NOT NULL auto_increment,
  Nickname VarChar(50) NOT NULL default '',
  Kennwort VarChar(50) NOT NULL default '',
  Nachname VarChar(50) NOT NULL default '',
  Vorname VarChar(50) NOT NULL default '',
  PRIMARY KEY (Id)
)
 
Zuletzt bearbeitet:
Zurück