beantworteten Frage:Abrufen von Benutzernamen von MYSQL-Datenbank
Also habe ich ein Login und Registrierung Feature auf meiner Website vorgenommen haben, aber jetzt würde ich mag den Benutzernamen des und zählt zur Seitenleiste hinzuzufügen .. Aber ich kann nicht herausfinden, wie dies zu tun ist, und darum bitte ich Sie um Hilfe. Signup.inc.php:
<?php session_start(); include '../dbh.php'; $fname = $_POST['fname']; $lname = $_POST['lname']; $uid = $_POST['uid']; $pwd = $_POST['pwd']; if (empty($fname)) { header("Location: ../parts/signup.php?error=empty"); exit(); } if (empty($lname)) { header("Location: ../parts/signup.php?error=empty"); exit(); } if (empty($uid)) { header("Location: ../parts/signup.php?error=empty"); exit(); } if (empty($pwd)) { header("Location: ../parts/signup.php?error=empty"); exit(); } else { $sql = "SELECT uid FROM users WHERE uid='$uid'"; $result = mysqli_query($conn, $sql); $uidcheck = mysqli_num_rows($result); if ($uidcheck > 0) { header("Location: ../parts/signup.php?error=username"); exit(); } else { $enpwd = password_hash($pwd, PASSWORD_DEFAULT); $sql = "UPDATE users (fname, lname, uid, pwd) VALUES ('$fname', '$lname', '$uid', '$enpwd')"; $result = mysqli_query($conn, $sql); header("Location: ../index.php");} }
----- Login.inc.php:
<?php session_start(); include '../dbh.php'; $uid = $_POST['uid']; $pwd = $_POST['pwd']; $sql = "SELECT * FROM users WHERE uid='$uid'"; $result = mysqli_query($conn, $sql); $row = mysqli_fetch_assoc($result); $hash_pwd = $row['pwd']; $hash = password_verify($pwd, $hash_pwd); if ($hash == 0) { header("Location: ../index.php?error=empty"); } else { $sql = "SELECT * FROM users WHERE uid='$uid' AND pwd='$hash_pwd'"; $result = mysqli_query($conn, $sql); if (!$row = mysqli_fetch_assoc($result)) { echo "Your username or password is incorrect!"; } else { $_SESSION['id'] = $row['id']; } header("Location: ../pages/dashboard.php"); } ?>
--------- Sidebar:
<?php session_start(); if(!isset($_SESSION['id'])){ //if login in session is not set header("Location: ../index.php"); } include '../include/idtouser.sinc.php'; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>LoginSystem</title> <link rel="stylesheet" href="../css/global.css" type="text/css"> </head> <body> <header id="closeNav"> <nav> <div onclick="toggleNav()" id="star"><span class="hamburgerico">☰</span></div> <div class="profilePicture"></div> <div id="username">Username</div> <div id="rank"><p>Rank</p></div> <ul> <li><a href="#">Dashboard</a></li> <li><a href="#">Projects</a></li> <li><a href="#">Placeholder</a></li> <li><a href="#">Placeholder</a></li> <li><a href="#">Placeholder</a></li> <li><a href="../include/logout.inc.php">Log Out</a></li> </ul> </nav> </header>
Was wäre der richtige Weg für mich, dies zu tun?
ungeklärte Frage: UND - Gibt es eine Möglichkeit, ich könnte meine Reihen (1,2,3,4,5) zum tatsächlichen Rang Namen übersetzen, bevor sie in der Sidebar veröffentlichen?
Echo aus einem Haus gemacht Signup-Skript in 2016 nicht so widerhallen und richtig. – e4c5
Ihr Skript ist anfällig für sql Injektionen –
@MasivuyeCokile Ich weiß, ich habe das noch nicht behoben, ich bin mir dessen bewusst: D – Deeze