Also hab mal so ein kleines Login-Script erstellt
http://burakshp.bu.ohost.de/formular.php
Name: test
P.W: 123
Ich will jetzt noch das man sich Registrieren kann..
Wie mache ich das ?
Druckbare Version
Also hab mal so ein kleines Login-Script erstellt
http://burakshp.bu.ohost.de/formular.php
Name: test
P.W: 123
Ich will jetzt noch das man sich Registrieren kann..
Wie mache ich das ?
du verbindest dich mit einer MySQL-Datenbank, schreibst Daten rein und liest die aus.
Aha :roll:
Und wie mache ich dat?
Hab diesen Login-Script mit TUT geschrieben..
Auf jeden Fall solltest du MySQL und PHP richtig lernen.
Ich habe dazu das Buch "Web-Datenbanken" für 5 € im Pearl-Katalog gekauft gehabt und kann's jetzt relativ gut. Ob es das Buch jetzt noch gibt, weiß ich leider nicht.
Habs hingekriegt!
Aber jetzt will ich noch, dass wenn man nichts in die Felder eingibt eine Fehlermeldung kommt.
PHP-Code:
Code:<?php
if((!isset($[HIER DIE VARIABLE FÜR DEN USERNAME])) || (!isset($[HIER DIE VARIABLE FÜR DAS PW]))) {
die("Mindestens ein Feld wurde nicht ausgefüllt");
}
?>
!isset() == empty()
;)
lol - ich benutze immer !isset
OMG!
!isset() != empty()
z.b.:
Code:$x = '';
isset($x); //TRUE
empty($x); //TRUE
$x = array();
isset($x); //TRUE
empty($x); //TRUE
$x = FALSE;
isset($x); //TRUE
empty($x); //TRUE
$x = 0;
isset($x); //TRUE
empty($x); //TRUE
$x = '0';
isset($x); //TRUE
empty($x); //TRUE
isset() guckt einfach nur, ob die Variable definiert ist...
empty() guckt aber auch, ob sie leer ist. :wink:
warum schreiben wir nicht einfach
Dann ist jeder zufrieden!Code:if($variable=="")
@mods: ich glaube, das hier kann geclosed werden.
Jup! Mein Fehler! Ich meinte mit meinem Vergleich nur den Einsatz in obigem Beispiel, bei welchem empty() code bei der deklarierung sparen kann oder aber Fehler vermeidet (bei fehlender deklaration), wenn direkt über POST übergeben werden sollte.
Ich würde gerne auch so ein Login-Script erstellen, habe auch eine Anleitung gefunden, aber bei mir erscheint immer ein MySQL-Error.
Habe ich HIER schonmal gepostet, kann mir da einer helfen? Oder mir einen Script sagen, mit dem es auf Funpic funktioniert? Ich bin relativ sicher dass es an Funpic liegt.
mfg Ind3X
ähm. sollte das bei der page so sein das man sich ohne username und ohne pw einlogen kann? lol.
also hier mal ein login script mit sql und sessions:
login.php
Code:<center>
<form action="./check.php" method="post">
<table border="0">
<tr>
<td>Username:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="login" value="login"></td>
</tr>
</table>
</form>
</center>
check.php
Code:<?php
session_start();
if($_POST['login'] && isset($_POST['password']) && $_POST['password']!="" && isset($_POST['username']) && $_POST['username']!="")
{
include'./config.php';
$pass=$_POST['password'];
$pass=md5($pass);
$user= $_POST['username'];
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($db) OR die(mysql_error());
$sql = "SELECT ID,rechte,aktiv,user,pass FROM `users` WHERE `user`='$user'";
$result = mysql_query($sql) OR die(mysql_error());
if(mysql_num_rows($result)) {
while($row = mysql_fetch_assoc($result)) {
$id= $row['ID']."";
$username= $row['user']."";
$password= $row['pass']."";
$rechte= $row['rechte']."";
$aktiv= $row['aktiv']."";
if($pass== $password && $user==$username && $aktiv=="1" && $pass!="" && $user!="")
{
$time=time();
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($db) OR die(mysql_error());
$query="UPDATE `users` SET lastlogin = '$time' WHERE `id`='$id'";
mysql_query($query);
mysql_close();
$remote=$_SERVER['REMOTE_ADDR'];
$ip=$remote;
$daten="$username|$password|$ip";
$sid=md5($daten);
$_SESSION['sidses']=$sid;
$_SESSION['uidses']=$id;
$_SESSION['authses']=$rechte;
header("Location: ./index.php?site=home&mode=1&sid=$sid&uid=$id&auth=$rechte");
exit;
}
}
}
}
sleep(2);
header("Location: ./index.php?site=home");
exit;
?>
index.php
Code:<?php
if(isset($_GET['site']))
{
$site=$_GET['site'];
}
else
{
$site="home";
}
if(isset($_GET['auth']))
{
$auth=$_GET['auth'];
}
else
{
$auth="";
}
if(isset($_GET['uid']))
{
$uid=$_GET['uid'];
}
else
{
$uid="";
}
if($sid!="" && $auth!="" && $uid!="")
{
if(isset($_SESSION['sidses']))
{
$sidses=$_SESSION['sidses'];
}
if(isset($_SESSION['authses']))
{
$authses=$_SESSION['authses'];
}
if(isset($_SESSION['uidses']))
{
$uidses=$_SESSION['uidses'];
}
}
if(!isset($sidses))
{
$sidses="";
}
if(!isset($authses))
{
$authses="";
}
if(!isset($uidses))
{
$uidses="";
}
$code="sid=$sid&uid=$uid&auth=$auth";
if($sid== "" or $sid!=$sidses or $auth=="" or $auth!=$authses or $uid=="" or $uid!=$uidses)
{
session_destroy();
}
if($sid== "" or $sid!=$sidses or $auth=="" or $auth!=$authses or $uid=="" or $uid!=$uidses)
{
echo'<span style="color:#C0C0C0">login</span>';
}
else
{
echo'logout | ';
if($auth=="1")
{
echo'Benutzerverwaltung ';
}
}
?>
das alles funzt net so ganz... wegen demaufbau der seiten ... weil in der index.php die richtigen seiten net includiert werden. grad... aber das gundprinzip funzt.
Hm ok, ich habe den Fehler beseitigt, (als Server einfach localhost angegeben anstatt die URL) Aber jetzt kommt ein anderer Error:
usernae und Passwort stimmen zu 100%, daran kann es nicht liegen.Code:Access denied for user 'skriptkiddie_01'@'%' to database 'users'
jmd. ne Idee?
mfg Ind3X
Schau mal, dass du in der SQL-Verwaltung dem User auch die Rechte gibst, dass er die DB auslesen darf.