Hey Leute hab im Internet mal gesucht und habe diesen Thread im SAMP Forum gefunden.
Hier steht wie man einen Basic User Control Panel macht. (MySQL , nicht DINI)
Features
Login
User stats
Logout
Starten wir unser User Control Panel
Als erstes musst ihr euch sicher sein dass ihr XAMPP oder WAMP habt und ihr einen Ordner in htdocs erstellt habt namens ucp.
In diesem Ordner werden wir unsere Files erstellen
1. Seitenname : config.php
Wofür : Zum Connecten zum MySQL Server und auswählen der Database
Sprache: PHP
<?php
$connect = mysql_connect("localhost", "root", "") or die("I can't connect to the server!"); //Mit dem MySQL Server connecten , ändert die Settings wenn ihr musst
mysql_select_db("sa:mp") or die ("I can't find the database!"); //Database aus wählen , ändert den Namen eurer Database
function sanitize($string) //Funktion um xss, mysql und csrf zu desinfizieren Dankt XFlawless
{
$string = strip_tags($string);
$string = mysql_real_escape_string($string);
return $string;
}
?>
Alles anzeigen
2.Seitenname: login.php ihr könnt es auch index.php nennen wenn ihr nur login und Stats in euren ucp wollt .....
Wofür: Login
Sprache : PHP
<?php
include("config.php"); //Hinzufügen unserer config.php welche zum MySQL Server connectet
session_start(); //Session starten für profile.php
error_reporting(0); //Ohne das werden wir immer einen dummen Fehler bekommen dass die Variable nicht definiert ist
$submit = $_POST['submit']; //Variable für den Submit Button , in dieser variable speichern wir Button welcher der Player klickt in <input type='submit' name="submit" value='Login' />....
$username = sanitize($_POST['username']); //Variable für Username , in dieser Variable speichern wir den Text welcher der User in <input type="text" name="username".... eintippt
$password = sanitize($_POST['password']); //Variable für Passwort , in dieser Variable speicher wir den Text welcher der User in <input type="password" name="password".... eintippt
if($submit) //Wenn er auf den Submit Button klickt
{
if($username && $password) //Wenn er sowohl von Username und Passwort tippt und nicht eine von dem (Stand so dort hab also keine Fehler gemacht :D)
{
$query = mysql_query("SELECT username, password FROM users WHERE username = '$username'"); //Auswählen von Username und Passwort ,ändert es in euere Field names , ändert Users in eurer Tabellen Namen ,$username bedeutet username wenn er dass tippt
if(mysql_num_rows($query) == 1) //if user exists Wenn User existiert
{
while($row = mysql_fetch_assoc($query)) //mache eine schleife durch the Tabelle damit wir in mysql_query auswählen
{
$dbusername = $row['username']; //Einstellung dbusername als Variable von der Tabelle , ändert '' username '' in euer Feld
$dbpassword = $row['password']; //Einstellung dbpassword als Variable von der Tabelle , ändert '' password '' in euer Feld
}
if($username == $dbusername && $password == $dbpassword) //Wenn Username und Passwort gleich sind wie einer von der Tabelle
{
$_SESSION['username'] = $dbusername; //Session Einstellung Username von einem in der Tabelle, das ist nützlich when ihr euch einloggt , dass der Browser restartet und dann ihr in der Website wo eurer profile.php ist umgeleitet wird.
echo header('location: profile.php'); //User wird umgeleitet zu seinem Profil
}
else echo "Wrong password!"; //Wenn der User ein Falsches Passwort tippt bekommt er diese Nachricht
}
else echo "Username doesn't exist!"; //Wenn der User einen nicht existierenden Usernamen eintippt bekommt er diese Nachricht
}
else echo "Type name and password!"; //Wenn der User nichts eintippt bekommt er diese Nachricht
}
?>
Alles anzeigen
3.Tut dies ganz unten von login.php/index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Basic UCP</title>
//Hier könnt ihr euer Design adden (Löscht diese Zeile)
<form action='login.php' method='POST'>
<input type="text" name="username" value='<?php echo $username?>'/>
<input type="password" name="password"/>
<input type='submit' name="submit" value='Login' />
</form>
</head>
</html>
Alles anzeigen
4.Seitenname: logout.php
Wofür : Logout
Sprache: PHP
<?php
include("config.php"); //Config.php hinzufügen
session_start(); //Session starten
session_destroy(); //Session Zerstören
header('location: login.php'); //User umleiten auf login.php
?>
5.Seitenname: profile.php
Wofür : User Stats anzeigen
Sprache: PHP
<?php
include("config.php"); //Config.php hinzufügen
session_start(); //Session starten
error_reporting(0);
if(isset($_SESSION['username'])) //Wenn Session eingestellt ist , also wenn der User eingeloggt ist
{
$username = $_SESSION['username']; //Einstellung von der Variable Username als einer von der Session
$query = mysql_query("SELECT * FROM users WHERE username = '$username'"); //Wählt alle von der Tabelle User aus welche den Username haben die deinen Namen in dem du dich eingeloggt hast haben
echo "Welcome ".$_SESSION['username']; //Sagt Willkommen zu den Usern
while($row = mysql_fetch_assoc($query)) //Schleift durch die Tabelle um die Infos zu erhalten
{
$name = $row['username']; //Wählt username aus und ändert Username in der Seite
$money = $row['money']; //Wählt User geld aus und ändert Money in der Seite
$score = $row['score']; //Wählt User Score aus und ändert Score auf der Seite
$kills = $row['kills']; //Wählt User Kills aus und ändert Kills auf der Seite
$deaths = $row['deaths']; //Wählt User Tode aus und ändert deaths aud der Seite
}
echo "<br><br>Name: ".$name."<br> Money: ".$money."<br> Score: ".$score."<br> Kills: ".$kills."<br> Deaths: ".$deaths;
}
else header('location: login.php'); //Wenn der User nicht eingeloggt ist wird er auf die Login Seite umgeleitet (Login.php)
?>
Alles anzeigen
6.Tut dies ganz unten von profile.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Basic UCP</title>
</head>
</html>
Ok, hier sind paar Bilder vom UCP , das Design gehört nicht dazu , das musst ihr selber machen
Creditz an System64 und XFlawless
Quelle
Übersetzung by Newhero (ok hab mir wirklich nicht Mühe gegeben)
Wenn ihr etwas nicht versteht PM an mich