Hallo erstmal,
Ich weiß nicht genau wie ich mein Problem beschreiben soll... Aber ich bei meiner Seite Ein Login/regestrierung gemacht mit php.
Jetzt habe ich eine noch eine Seite erstellt, in die man Werte eintragen kann, wie name/email und diese werden dann in einer DB gespeichert.
Jetzt habe ich die id eines users (DB-name: users) und will nur die Werte aus Der 2. DB(name: accv)haben, die mit der eingeloggten Id übereinstimmen.
1. DB-name: users (id,username,email,password),
2. DB-name: accv (id,NameS,NameA,,Email,Password,#users_id)
Code:
// LOGIN
if (isset($_POST['login_user'])) {
$username = mysqli_real_escape_string($db, $_POST['username']);
$password = mysqli_real_escape_string($db, $_POST['password']);
if (empty($username)) {
array_push($errors, "Username is required");
}
if (empty($password)) {
array_push($errors, "Password is required");
}
if (count($errors) == 0) {
$password = md5($password);
$query = "SELECT (username,password) FROM users WHERE username='$username' AND password='$password' ";
$results = mysqli_query($db, $query);
if (mysqli_num_rows($results) == 1) {
$_SESSION['username'] = $username;
$_SESSION['user_id'] = $results->fetch_object()->id; <----- hier hole ich mir die id
$_SESSION['success'] = "You are now logged in";
header('location: index.php');
}else {
array_push($errors, "Wrong username/password combination");
}
}
}
?>
Code:
Nun setze ich die Werte in die DB ein
<?php
session_start();
$con = mysqli_connect('localhost','root','');
if(!$con)
{
echo 'Not Connected To Server';
}
if (!mysqli_select_db ($con,'test'))
{
echo 'Database Not Selected';
}
$NameS = $_POST ['NameS'];
$NameA = $_POST['NameA'];
$Email = $_POST['Email'];
$Password = $_POST['Password'];
$UserId = $_SESSION['user_id'];
$sql = "insert into accv(NameS,NameA,Email,Password,users_id) values ('$NameS','$NameA','$Email','$Password', '$UserId')";
if (!mysqli_query($con,$sql))
{
echo 'Not Inserted';
}
else
{
echo 'Inserted Successfully';
}
header("refresh:1; url=gmail.php");
?>
Code: list.php
Jetzt gebe ich dir Daten auf der Seite wieder
<?php
session_start();
$pdo = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$a = 1;
Line: 33 $sql = "SELECT NameS, NameA, Email, Password FROM accv WHERE users_id=".$_SESSION['user_id'];
Line: 34 foreach ($pdo->query($sql) as $row) {
echo "<b><i>".$a."</i></b>: <b>Webside Name:</b> <i>".$row['NameS']."</i>; </br> <b>Account name:</b> <i>".$row['NameA']."</i>; </br><b>Email:</b> <i>".$row['Email']."</i>;</br> <b>Passwort: </b><i>".$row['Password']."</i> </br> </br> ";
$a = $a + 1;
}
(Notice: Undefined index: user_id in C:\xampp\htdocs\AccountV2\list.php on line 33
Das sind die Fehler die ausgegeben wurden
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\AccountV2\list.php on line 34 )
Danke schon mal im vorraus :)
Lg
Ich weiß nicht genau wie ich mein Problem beschreiben soll... Aber ich bei meiner Seite Ein Login/regestrierung gemacht mit php.
Jetzt habe ich eine noch eine Seite erstellt, in die man Werte eintragen kann, wie name/email und diese werden dann in einer DB gespeichert.
Jetzt habe ich die id eines users (DB-name: users) und will nur die Werte aus Der 2. DB(name: accv)haben, die mit der eingeloggten Id übereinstimmen.
1. DB-name: users (id,username,email,password),
2. DB-name: accv (id,NameS,NameA,,Email,Password,#users_id)
Code:
// LOGIN
if (isset($_POST['login_user'])) {
$username = mysqli_real_escape_string($db, $_POST['username']);
$password = mysqli_real_escape_string($db, $_POST['password']);
if (empty($username)) {
array_push($errors, "Username is required");
}
if (empty($password)) {
array_push($errors, "Password is required");
}
if (count($errors) == 0) {
$password = md5($password);
$query = "SELECT (username,password) FROM users WHERE username='$username' AND password='$password' ";
$results = mysqli_query($db, $query);
if (mysqli_num_rows($results) == 1) {
$_SESSION['username'] = $username;
$_SESSION['user_id'] = $results->fetch_object()->id; <----- hier hole ich mir die id
$_SESSION['success'] = "You are now logged in";
header('location: index.php');
}else {
array_push($errors, "Wrong username/password combination");
}
}
}
?>
Code:
Nun setze ich die Werte in die DB ein
<?php
session_start();
$con = mysqli_connect('localhost','root','');
if(!$con)
{
echo 'Not Connected To Server';
}
if (!mysqli_select_db ($con,'test'))
{
echo 'Database Not Selected';
}
$NameS = $_POST ['NameS'];
$NameA = $_POST['NameA'];
$Email = $_POST['Email'];
$Password = $_POST['Password'];
$UserId = $_SESSION['user_id'];
$sql = "insert into accv(NameS,NameA,Email,Password,users_id) values ('$NameS','$NameA','$Email','$Password', '$UserId')";
if (!mysqli_query($con,$sql))
{
echo 'Not Inserted';
}
else
{
echo 'Inserted Successfully';
}
header("refresh:1; url=gmail.php");
?>
Code: list.php
Jetzt gebe ich dir Daten auf der Seite wieder
<?php
session_start();
$pdo = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$a = 1;
Line: 33 $sql = "SELECT NameS, NameA, Email, Password FROM accv WHERE users_id=".$_SESSION['user_id'];
Line: 34 foreach ($pdo->query($sql) as $row) {
echo "<b><i>".$a."</i></b>: <b>Webside Name:</b> <i>".$row['NameS']."</i>; </br> <b>Account name:</b> <i>".$row['NameA']."</i>; </br><b>Email:</b> <i>".$row['Email']."</i>;</br> <b>Passwort: </b><i>".$row['Password']."</i> </br> </br> ";
$a = $a + 1;
}
(Notice: Undefined index: user_id in C:\xampp\htdocs\AccountV2\list.php on line 33
Das sind die Fehler die ausgegeben wurden
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\AccountV2\list.php on line 34 )
Danke schon mal im vorraus :)
Lg