• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Klassen Homepage

Status
Für weitere Antworten geschlossen.

m3alde

Neues Mitglied
Hallo Liebe Community

Ich bin neu hier und suche verständniss und Hilfe für meine Fragen.
Ich kenne mich nicht alt sooo gut mit HTML und PHP aus :-(.

Nun mein Anliegen:

Wir haben zurzeit einen Klassenblog, aber da so ein Blog nicht gerade schön ist gehen nicht viele auf den Blog. Deshalb wollte ich mich darum kümmern das er wieder besuchter wird. Nun habe ich mir gedacht das ich ja auch einen Homepage für unsere Klasse machen könnte, in HTML und PHP. Doch dies ist schwerer als ich dachte. Was ich gerne wissen möchte ist: Wie ich es machen kann das wenn die seite aufgerrufen wird das man sich erst ein loggen muss um überhaupt auf die seite zu kommen, das heißt es soll als erstes ein Login Screen erscheinen wenn die seite aufgerufen wird. Dies soll dazu dienen das nicht jeder auf die Homepage drauf kommt da auch sachen bekanntgemacht werden über die HP die nicht jeder erfahren soll.

Es soll so ablaufen das meine Mitschüler mir ihre E-Mail adresse geben und das ich sie so auf die Homepage einladen kann. Das sie auf einen Link klicken müssen und sich dort anmelden müssen.


Ich weiss das es schon eine schwere sache ist( für mich ) und das die anforderungen von mir nicht gerade niedrig sind aber es wäre schon wenn ihr mir helfen könntet und das wir es so hinbekommen.

mfg m3al.de

P.S.: Danke schonmal für die Hilfe ;)
 
ach was!

Lieber m3alde,

ich bin selber vor 2 jahren in so eine Lage gekommen.. :D wir haben ein Projekt von der Schule aus machen müssen, und jeder schüler sollte sich auf der seite einloggen und protokollieren können.
Da dein Problem aber durch dein "Anforderungen" kompliziert wird habe ich mir gedacht, dass du vllt Hilfe gebrauchen kannst.
//Achtung bin selber noch ein bisschen schwach in komplizierten scripten.//

Also als erstes musst du einen Server finden, der auch php und mysql unterstützt. Wenn du soweit schon bist, kannst du dir gedanken über den aufbau machen...

Aber deinem Beitrag nach zu urteilen ahst du das auch schon gemacht..
Gut, gut.

Also nun zu der Startseite.
Natürlich muss sie "index.php" heißen und sollte auf der ersten Seite des Servers stehn.
Ich werde mich hüten komplette Codes zu posten, da ich aus erfahrung nur sagen kann, dass es einfacher ist es selber zu schreiben:
HTML:
<form action="login.php" method="POST">
Name: <input type="text" name="username"><br>
Passwort: <input type="password" name="pass"><br>
<input type="submit" value="Login">
</form>
Mehr brauchst du eigentlich nicht auf der Startseite. Es ist jedoch schöner, wenn man einen guten Style hat. Den Code kannst du dann einfach in den Body einfügen.
Jetzt gibt es 2 Möglichkeiten: mit mysql oder mit textdatei....
Eigentlich ist es immer besser mysql zu benutzen. (IST sicherer)

Die login.php sollte dann mit mysql so aussehen:
PHP:
<?
$verbindung = mysql_connect("localhost", "Benutzername" , "Passwort") 
or die("Keine Verbindung hergestellt!"); 
mysql_select_db("klasse") or die ("Keine Verbindung hergestellt"");
//Jetzt hast (oder nicht) du eine Verbindung zu Datenbank, wo namen und passwörter stehn
$username = $_POST['username'];
$passwort = $_POST['pass'];
//jetzt hast du den eingegebenen namen und das passwort aus dem formular
//als nächstes solltest du die daten mit den originalen vergleichen
$abfrage = "SELECT name, pass FROM klasse WHERE name = '$username' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
//hier werden die namen und passwörter gelesen, bei denen der name der selbe ist wie der benutzer eingegeben hat
if($row->pass == $passwort)
   {
   $_SESSION['name'] = $username
   echo "Login erfolgreich!";
   //jetzt ist der Benutzer eingeloggt. durch die if funktion wird das passwort üebrprüft!
   }
else
   {
   echo "Benutzname und/oder Passwort sind falsch!<a href=index.php>Zurück</a>";
   //wenn das passwort jedoch falsch ist wird dieser text ausgegeben
   }

Das war der Login. Wenn du jetzt auf jede geschützte Seite diesen code eingibst ist er geschützt:

PHP:
<?php 
session_start(); 

if(!isset($_SESSION['name'])) 
   { 
   Header("Location: index.php");  
   exit; 
   } 
?>
Damit wird überprüft, ob der Benutzer angemeldet ist. Also ob $_SESSION['name'] existiert, welche wir beim Login erstellt haben.

Mit der registrierung kann ich dir jedoch erstmal noch nicht helfen. Denn du willst diesen Bereich ja auch "geschützt machen". Ich weiß leider nicht wie das gehen soll!

Du kannst jedoch deine Klassenkameraden alle einzeln eintragen. Bei unter 30 Leuten macht das sicher nix.

mfg. emc991;ugl
 
Zuletzt bearbeitet:
wegen dem login-vorgang könnte ich die .htaccess empfehlen. must aber beim kauf / aussuchen des webspace darauf achten, dass das auc unterstützt wird.
es geht im wesentlichen darum, dass du eine (in unix-systemen durch den punkt vorn unsichtbare) datei erstellst, die dann der apache-server auswertet und nur vorher eingetragenen kombinationen aus nutzer und passwort zutritt gewährt. das ist ziemlich sicher.
ich hab da gerade was gefunden: Verzeichnisschutz/Htaccess - Generator
 
Hi ich denke das es für dich reicht (und auch sehr viel einfacher ist) einen Drittanbieter für den Login zu benutzen.auf Kostenlose Homepage erstellen - Kostenlose Homepage Tools - onlyfree.de kannst du einfach mal gucken, doft findest du einen anbieter mit einem eigenen Login-Eingabefeld,was du ganz einfach in deine Homepage als HTML einfügen kannst.Du kannst dann über eie Externe Seite deine Mitglieder selbst erstellen und verwalten.Nur ein Klitzekleiner werbebannerist dann zu sehen,der sich aber theoretisch leicht entfernen lässt,was aber dann illegal wäre.

mfg
Minitaba
 
Ich finde es schonmal gut das sich schon so viele beteiligt haben und versucht haben mir zu helfen.

Allerdings werde ich die Variante von emc991 nehmen da ich sie am angemessensten finde ;)


Ich habe aber noch ein paar fragen.

1. Ich habe die index.php( wo man sich jetzt anmelden muss ) noch ein wenig schöner gemacht, mit einer Hintergrundgrafik. Ich mache ich es das das Login feld mehr in der mitte ist?

2. Wo muss ich jetzt die User daten( Passwort und Username ) eintragen die dann registriert sein sollen?

3. Wozu ist jetzt genau der 2. Code (PHP-Code:...) ?
 
der zweite teil stellt sicher, dass niemand OHNE login auf die seite kann.
ein login macht nur sinn, wenn man auch prüft, ob sich jemand erfolgreich eingeloggt hat und ihn gegebenenfalls rausschmeisst. genau das macht code 2
 
Danke

Danke, dass du dich für meine variante entschieden hast...

Also gut: zu deinen fragen:

1. Ich habe die index.php( wo man sich jetzt anmelden muss ) noch ein wenig schöner gemacht, mit einer Hintergrundgrafik. Ich mache ich es das das Login feld mehr in der mitte ist?

Also soweit ich weiß gibt es da einen css code...
würde ich jedoch nicht empfehlen, da ich mich da leider nicht auskenn! :P

Es geht auch einfacher.. Du machst eine Tabelle und zentrierst alles das sieht dann im code so aus:
HTML:
<table width="100%" height="100%">
<tr>
<td width="100%">
<p align="center">Hier kommt dann der Inhalt rein.. also das Loginfeld</td>
</tr>
</table>

Zur 2. Frage :
2. Wo muss ich jetzt die User daten( Passwort und Username ) eintragen die dann registriert sein sollen?

Du musst die in der mysql-Datenbank eintragen. Ich hoffe doch sehr, dass du einen Server mit mysql hast, denn sonst ist alles im Ar**h.
Ohne einen mysql-server kann man nichts machen.

Mal so ne Frage: Welchen Server hast du denn?

Also in mysql müsstetst du in der tabelle "klasse" die namen in der spalte "name" und die passwörter in der spalte "pass" eintragen.
Aber das geht nur wenn du einen mysql-fähigen server wie z.B. ohost.de hast.

Viel Glück emc991:twisted:
 
Ganu den "server" habe ich, ohost.de habe auch alles aktiviert :)

Ok danke

zu meiner ersten frage habe ich alles hinbekommen

Beim 2. bin ich mir noch nicht ganz sicher :(

Könntest du mir da noch ein wenig weiter helfen?
Wie ich die datei erstelle wo die passwöter und namen drin stehen und womit( Editor? )
 
Zuletzt bearbeitet:
Also gut

Endlich mal was, mit dem ich arbeiten kann...

Ich arbeite selber mit ohost.

Zu erst solltest du dich auf der homepage von ohost einloggen und den mysql-server unter "Webhosting MySQL" aktivieren. dann muss man ein passwort eingeben.

dannach steht da i-wo ein link mit der aufschrift "MySQL-Daten" da klickst du drauf und dann auf "Jetzt aufrufen!" Dann öffnet sich ein Fenster. Da gibts du das vorher eingegebene passwort ein und erstellst eine tabelle "klasse" und darin die spalten "name" und "pass". Fertig...

du musst im (von mir bekommenen) php-scipt noch die richtigen daten eintragen:
PHP:
$verbindung = mysql_connect("localhost", "homepagename ohne .ohost.de" , "Passwort, das du eingegeben hast") 
or die("Keine Verbindung hergestellt!"); 
mysql_select_db("klasse") or die ("Keine Verbindung hergestellt"");

kein Problem..

wenn dumehr Holfe brauchst schreib mir doch ne PM oder per
ICQ: 430-039-391

gruß emc991;ugl
 
Hier um die "klasse" zu machen:

Code:
create table klasse (
user_id integer not null primary key auto_increment,
username varchar(48),
pass varchar(128)
)
Um zu wissen, wie man dann in die DB einschreibt:

Code:
insert into klasse (username, pass) values (DER GEWÜNSCHTE NAME, DAS GEWÜNSCHTE PASSWORT)
Und wenn du das nicht mit SQL machen willst, sondern in deinem Bereich auf der Website, in der Seite, wenn der Login erfolgreich war, das eingeben:

PHP:
$ich = "DEIN NAME"; //Hier gibst du dann deinen Namen ein
if ($ich==$username) {
  ?>
<a href="einedateifuerdenadmin.php">Adminpanel</a>
  <?php
}
Dann in einedateifuerdenadmin.php folgenden Code eingeben:
PHP:
<html>
<head>
<?php
$ich = "DEIN NAME"; //Hier gibst du dann deinen Namen ein
$meins = "DEIN PASSWORT"; //Hier gibst du dann dein Passwort ein
?>
</head>
<body>
<?php
(if isset($_POST["page"];)) {
  $page = $_POST["page"];
} else {
  $page = "1";
}
if ($page=="1") {
  ?>
<form method="POST" action="einedateifuerdenadmin.php"><center>
  Gib hier deinen Namen ein: <input type="text" name="user_name"><br>
  Gib hier dein Passwort ein: <input type="password" name="pw"><br>
  <input type="submit" value="OK"><input name="page" hidden="2">
</center>
</form>
</form>
  <?php
}
$asterixus_id = $_GET["asterixus_id"];
if ($asterixus_id=="jaja") {
  $page="2";
}
if ($page=="2") {
  $username = $_POST["user_name"];
  $password = $_POST["pw"];
  if ($asterixus_id=="jaja") {
    $password=$meins;
    $username=$ich;
  }
  if (($username==$ich) && ($password==$meins)) {
    ?>
      <form method="POST" action="einedateifuerdenadmin.php">
        <input type="text" name="newuser"><input type="password" name="newpass"><input type="hidden" name="user_name"><input type="text" name="pw"><input type="submit" value="OK"><input type="hidden" value="3" name="page">
      </form>
    <?php
  } else {
    if (isset($username)) {
      $username=", "$username;
    } else {
      $username="";
    }
    echo("<a href=\"einedateifuerdenadmin.php\">Bitte logge dich erneut ein".$username."!</a>");
  }
}
if ($page=="3") {
  $username = $_POST["user_name"];
  $password = $_POST["pw"];
  $newpass = $_POST["newpass"];
  $newuser = $_POST["newuser"];
  if (($username==$ich) && ($password==$meins) && (isset($newuser)) && (isset($newpass))) {
    //HIER MUSST DU DICH IN DEINE DATENBANK EINLOGGEN, WIE EBEN!
    $sql="insert into klasse (user_id, username, userpass) values";
    $sql.="('', '$newuser', '$newpass')";
    $result = mysql_query($sql);
    echo("Der User ".$newuser." wurde erfolgreich in die Datenbank eingeschrieben!");
    echo("<a href="einedateifuerdenadmin.php?asterixus_id=\"jaja\"">Du kannst nun einen neuen User einstellen</a>");
  } else {
    if (isset($username)) {
      $username=", "$username;
    } else {
      $username="";
    }
    echo("<a href=\"einedateifuerdenadmin.php\">Bitte logge dich erneut ein".$username."!</a>");
  }
}
</body>
</html>
 
Zuletzt bearbeitet:
also das wäre ja super, dann könnte ich ja auf der seite die anderen user(mitschüler) eintragen und bräuchte das nicht alles in der mySQL datenbank eintragen.

Allerdings klappt das nicht wirklich bei mir. Wo muss ich genau meine mySQL daten eintragen?
 
Also dann mag ich dir mal helfen

eine frage noch, was muss ich in welche datei schreiben das man von der seite "Login Erfolgreich" weitergeleitet wird z.b. auf www.html.de (nur ein beispiel) ??

Also gut. Da ich noch ein Anfänger in php bin sage ich dir, wie du es mit html hinbekommst:

So müsste der code aussehen:
HTML:
...
<head>
<meta http-equiv="refresh" content="5; url=was-weiß-ich.php">
</head>
...

Natürlich kannst du alle möglichen php-codes drüber und drunter eintragen. text muss aber in einen <BODY>-Tag geschrieben werden

gruß emc991
 
Danke für die Hilfe =)

Hat noch jemand ne lösung für die sache von Asteriux wäre nämlich schon wemm ich die passworter so eingeben könnte und es nicht in der mySQL datenbank machen müsste ;)
 
und gibt es eine möglichkeit das man eine admin zone macht, und und dort komme dann nur ich rein wenn ich eingeloggt bin und dort kann ich dann die user eintrage die dann gleichzeitig in die mySQL datenbank eingetragen werden, sozusagen das eintragen der User in die mySQL datenbank über eine admin zone?

Ich glaube ich habe zu hohe anforderungen^^ oder is das machbar?
 
und gibt es eine möglichkeit das man eine admin zone macht, und und dort komme dann nur ich rein wenn ich eingeloggt bin und dort kann ich dann die user eintrage die dann gleichzeitig in die mySQL datenbank eingetragen werden, sozusagen das eintragen der User in die mySQL datenbank über eine admin zone?

Ich glaube ich habe zu hohe anforderungen^^ oder is das machbar?

Entschuldige meine Faulheit, aber ich habe bereits einen solchen code geschrieben:
http://www.html.de/datenbanken-z-b-mysql/16404-pw-abfrage.html#post135591

Ist ja normalerweise nicht meine Art auf einen anderen Beitrag zu weisen. Aber in diesem Fall habe ich den ja auch selbst geschrieben :D:D
 
Also ich habe in dem Link gelesen das du befürchtest das die anderen das pw mir nicht anvertrauen, genau diese gefürchtung habe ich auch und so wird es auch denke ich sein das einige aus meiner klasse das passwort für ssich allein haben wollen. Wie muss das script/code geändert werden das auf der Haupt seite(index.php) noch ein button "Registrieren" ist wo wenn man drauf klickt eine seite kommt auf der man seine daten eintragen kann. Allerdings muss es so sein das ich die registration erst bestätigen müsste bevor die neuen user sich einloggen könnten.

mfg Problemfall m3al.de xD
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben