WebSite X5Help Center

 
Filippo R.
Filippo R.
User

Registrazione automatica dati login nel database, lettura database da account  it

Autore: Filippo R.
Visite 809, Followers 4, Condiviso 0  

Buongiorno,

i dati degli utenti registrati sono nel DB creato da Website nel server. L'utente accede ad una pagina protetta.

nella pagina voglio far visualizzare i dati del database riferiti soltanto al record ed alcuni campi dell'utente loggato.

Ho provato a far leggere il DB tramite il modulo DBview, ma visualizza tutti i record dell'intero database.

come potete aiutarmi?

grazie

Postato il
4 RISPOSTE - 1 CORRETTO
Filippo R.
Filippo R.
User
Autore

Buongiorno Claudio

lo scopo è visualizzare in una pagina protetta, dove accedono tutti gli utenti registrati automaticamente, e una volta loggati vengono visualizzati i loro dati  contenuti nel database che ha creato ws nel server.

Naturalmente conosco i dati di accesso al db, la tabella dove vengono registarti automaticamente gli utenti ma non riesco a far visualizzare i dati.

questo è uno script che utilizzo

<?php
$servername = "****";
$username = "****";
$password = "Q*****";
$dbname = "*****";

// Creazione della connessione
$conn = new mysqli($servername, $username, $password, $dbname);

// Verifica della connessione
if ($conn->connect_error) {
die("Connessione al database fallita: " . $conn->connect_error);
}

// Controllo utente loggato
session_start();
if (isset($_SESSION['username'])) {
$email = $_SESSION['username'];

// Query per ottenere i dati dell'utente loggato
$query = "SELECT firstname, lastname FROM "nome tabella" WHERE email = '$email'";
$result = $conn->query($query);

if ($result->num_rows > 0) {
// Dati dell'utente trovati
$row = $result->fetch_assoc();
$firstname = $row['firstname'];
$lastname = $row['lastname'];

// Mostra i dati dell'utente
echo "<h1>Dati dell'utente loggato:</h1>";
echo "<p>Nome: $firstname</p>";
echo "<p>Cognome: $lastname</p>";
} else {
// Nessun dato trovato per l'utente loggato
echo "<h1>Utente non loggato.</h1>";
}
} else {
// Utente non loggato
echo "<h1>Utente non loggato.</h1>";
}

// Chiusura della connessione
$conn->close();
?>

però nella pagina web mi visualizza il messaggio "Utente non loggato." anche se ho fatto il login altrimenti in questa pagina protetta non entrei.

spero di esseremi spiegato

grazie

Leggi di più
Postato il da Filippo R.
Skeggia 12
Skeggia 12
Moderator

Prova ad usare questo, che ho "semplificato" da un codice di MAeSI e Giorgio C. che io avevo adattato per le mie esigenze, ma che tu puoi riadattare, anche graficamente alle tue esigenze...

<?php
$username = "";
$password = "";
$dbname = "";
$servername = "";

/// Creazione della connessione
$conn = new mysqli($servername, $username, $password, $dbname);

// Verifica della connessione
if ($conn->connect_error) {
die("Connessione al database fallita: " . $conn->connect_error);
}

// Controllo utente loggato
$n = time();
$pa = Configuration::getPrivateArea();
$dati = $pa->whoIsLogged();
$username = $dati['username'];
$datiUser = $pa->getUserByUsername($username); // SOLO EDIZIONE PROFESSIONAL


echo 'PROFILO UTENTE ' . $datiUser['realname'] . '<br>';
echo 'Username: ' . $username . '<br>';
echo 'Nome: ' . $dati["firstname"] .'<br>';
echo 'Cognome: ' . $dati["lastname"] .'<br>';
echo 'E-mail: '. $dati["email"] .'<br>';


// Chiusura della connessione
$conn->close();
?>

Leggi di più
Postato il da Skeggia 12
Filippo R.
Filippo R.
User
Autore

Grazie Skeggia, era in parte quello che cercavo ed ho aggiunto la lettura di una tabella nel database sul server e la visualizzazione soltanto di alcuni campi.

grazie 

Leggi di più
Postato il da Filippo R.