buongiorno sono riuscito ad assemblare un sito web dove l'utente può registrarsi e modificare il suo profilo con upload foto profilo ma non riesco a far visualizzare il profilo utente cioè se l'utente clicca sul nome in chat non stampa nulla ecco ciò che ho fatto il sito usa le sessioni chiedo aiuto grazie
pagina chat:
-----------------------
Codice PHP:
<?php
/*
blocco dei parametri di connessione
*/
// nome di host
$host = "localhost";
// nome del database
$db = "ajaxdb";
// username dell'utente in connessione
$user = "root";
// password dell'utente
$password = "";
/*
blocco try/catch di gestione delle eccezioni
*/
try {
// stringa di connessione al DBMS
$connessione = new PDO("mysql:host=$host;dbname=$db", $user, $password);
// imposto dell'attributo necessario per ottenere il report degli errori
$connessione->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// selezione e visualizzazione dei dati estratti
foreach ($connessione->query("SELECT * FROM chat") as $row)
{
echo $row['name'] ." ". $row['msg'] ."<br />";
echo '<td><a href="profilo.php?id=' . $row['id'] . '">Profilo</a></td>';
}
// chiusura della connessione
$connessione = null;
}
catch(PDOException $e)
{
// notifica in caso di errore nel tentativo di connessione
echo $e->getMessage();
}
?>
---------------------
pagina profilo.php
Codice PHP:
<?php
include 'db.php';
$id = $_GET['id'];
$query=mysqli_query($con,"SELECT * FROM users where id='$id'")or die(mysqli_error());
$row=mysqli_fetch_array($query);
?>
<img id="myImg" src="uploads/unnamed.jpg" width="200" height="200">
</div>
</div>
</div>
<div class="col-md-6">
<div class="profile-head">
<h5>
dddddddddddddddddddddddd
</h5>
<p class="proile-rating"></p>
<div class="container">
<div class="row">
<div class="card-header"><p></p>
<li><strong> Nome: </strong><?php echo $row['name']; ?></li>
<li><strong> Anni: </strong><?php echo $row['age']; ?></li>
<li><strong> Genere: </strong><?php echo $row['gender']; ?></li>
<li><strong> Stato: </strong><?php echo $row['status']; ?></li>
<li><strong> Data registrazione: </strong><?php echo $row['create_datetime']; ?></li></div>
<div class="card" style="width: 14rem;">
---------------------
questa è la pagina login.php che controlla le sessioni
Codice PHP:
<?php
require('db.php');
session_start();
// When form submitted, check and create user session.
if (isset($_POST['name'])) {
$name = stripslashes($_REQUEST['name']);
// removes backslashes
$username = mysqli_real_escape_string($con, $username);
$password = stripslashes($_REQUEST['password']);
$password = mysqli_real_escape_string($con, $password);
// Check user is exist in the database
$query = "SELECT * FROM `users` WHERE name='$name'
AND password='" . md5($password) . "'";
$result = mysqli_query($con, $query) or die(mysql_error());
$rows = mysqli_num_rows($result);
if ($rows == 1) {
$_SESSION['name'] = $name;
$_SESSION['id'] = $id;
// Redirect to user dashboard page
header("Location: dashboard.php?id=$id" );
} else {
echo "<div class='form'>
<h3>Incorrect Username/password.</h3><br/>
<p class='link'>Click here to <a href='login.php'>Login</a> again.</p>
</div>";
}
} else {
?>
<form class="form" method="post" name="login">
<h4 class="login-title">Accesso utenti registrati</h4>
<input type="text" class="login-input" name="name" placeholder="name" autofocus="true"/>
<input type="password" class="login-input" name="password" placeholder="Password"/>
<input type="submit" value="Login" name="submit" class="login-button"/>
<p class="link">non sei registrato? <a href="registration.php">Registrati su socialchat</a></p>
</form>
<?php
}
?>