- Home
- Categorie
- Coding e Sistemistica
- PHP
- sessioni php area riservata
-
Se vuoi che l'utente inserisca dei dati che poi potrà visualizzare nell'area privata, devi usare un DB, oppure un file di testo dove salvi le informazioni di ogni singolo utente.
Ecco un piccolo esempio per salvare e leggere i dati da un file:
[PHP]
$path_file = $_SESSION["utente"] . ".txt";$data[0] = $_SESSION["utente"];
$data[1] = $_SESSION["password"];
$data[2] = $_SESSION["nome"];
$data[3] = "Altro ;)";$file = @fopen($path_file, "w");
fwrite($file, serialize($data));
fclose($file);if(file_exists($path_file))
{
$vet = file($path_file);
$data = unserialize($vet[0]);for($i = 0; $i <= count($data); $i++) { echo $data* . "<br>"; }
}
[/PHP]
-
ciao a tutti....
cambio di programma!!!!
domani acquisto il db mysql....
a questo punto dovrò rivoluzionare lo script per l'area riservata..
dovrebbe essere multiutente, nel senso che ogni utente ha una sua propria pagina di riepilogo, ma non c'è bisogno che questi dati vengano generati dinamicamente(per ora faccio con include da php)... perfavore...mi potete dare uno spunto????
e invece come posso risolvere (ora con db) l'inserimento da parte dell'utente e la visualizzazione perenne di alcuni dati????
ultimo problema e forse il più grosso di quelli elencati: si può fare un form di registrazione per gli utenti, al termine del quale venga inserito nella tabella di elenco degli utenti il nuovo userid e la nuova pwd???
Aiuto!!! Non conosco molto php e sono nei guai!!:bho::bho:
Ciao a presto
P.S.=Buonanotte a tutti!!!
@sups grazie mille dello script che hai postato....utilissimo!!!!
-
-
@thedarkita grazie mille del link
giorgiotave.it/forum/php-mysql/83033-tutorial-area-privata.html
ma... in questo modo tutti gli utenti potranno vedere la stessa pagina???
quindi sia l'utente ciao che l'utente tantisaluti vedranno la pag. privata???:):x
-
Si, altrimenti è sufficiente mettere qualche if controllando l'id nella variabile di sessione e dare accesso a pagine diverse ai singoli utenti
-
@Thedarkita said:
Si, altrimenti è sufficiente mettere qualche if controllando l'id nella variabile di sessione e dare accesso a pagine diverse ai singoli utenti
giusto, ma se volessi fare tutto da db?
nel senso io mi registro e nel db c'è anche 1 altro campo, nel quale di default è specificata la pagina privataancoradadefinire.php e così quando mi loggo apro privataancoradadefinire.php??si può fare??
intendo dire, a me interessa che l'utente Tizio, che si è registrato per primo (ed io ho avuto tutto il tempo di fargli la sua pag.) non veda la pag di Caio.
Quando Caio si registra avrà la pagina, come un template, cioè con nessun dato personale, standard.
dopo io aggiungo nella pagina di Caio tutti i suoi dati.
tutto ciòè fattibile???
Ciao e grazie mille per la disponibilità!!!!:):)
-
Si basta usare degli if se vuoi fare il tutto senza usare il database, altriemtni puoi pure creare un campo nella tabella con gli utenti e in quel campo per ogni utente metti il testo, e quindi con una query mostri il testo per ogni utente, niente di complicato.....
-
@Thedarkita said:
Si basta usare degli if se vuoi fare il tutto senza usare il database, altriemtni puoi pure creare un campo nella tabella con gli utenti e in quel campo per ogni utente metti il testo, e quindi con una query mostri il testo per ogni utente, niente di complicato.....
Ciao a tutti,
se volessi invece che l'utente si registra e poi nell'area privata scriva delle note che può rivedere posso usare il db, giusto?
per esempio da una textarea definisco una variabile e con INSERT la infilo nel db,
e poi la ripiglio col php e con echo $nota ce l'ho di nuovo???
-
inoltre ora ho un problema: io devo assolutamente fare in modo che l'utente loggandosi come Tizio vada alla pag. tizio.php e che anche provando a vedere la pagina caio.php non riesca.
allora, seguendo il consiglio di** TheDarkITA ho messo degli if ma riscontro un problema :
i vorrei che tutte la pagine contenenti dati personali stiano nella cartella _private, ma così facendo le posso utilizzare solo con include e require.
il problema è: facendo include o require la pagina si vede, il problema è che è sovrapposta alla schermata di login,
ho provato anche con header altrapagvuota.php; include pag.privata
ma non funziona.... :cry
come faccio??? sapete se c'è una soluzione???
ciao e ancora grazie a tutti
-
Meglio se posti qualche codice che non si capisce nulla...
comunque se fai le pagine cosi:
[php]
<?php
// Includo la connessione al database
require('config.php');// Se non è stata definita la variabile manda l'utente alla homepage
if($_SESSION['login'] != 1)
{
header('Location: /');
exit;
}
?>
<!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>Area privata</title>
</head><body>
Pagina privata!<br />
<br />
<br />
<a href="/logout.php">Logout</a><br />
</body>
</html>
[/php]dove 1 è l'id del'utente che ha accesso a quel file
-
ok questo sarebbe una soluzione, ma utilizzando l'header, non posso andare alle pagine della cartella /_private/ in quanto dà forbidden error.
quindi devo per forza utilizzare include e require, per queste pagine.:)
ma forse ho trovato la souzione , ora controolo poi vi faccio sapere.
ciao e grazie
-
[PHP]if($_SESSION['login'] == 1)
{
include('_private/tizio.php');
exit;
}
else if($_SESSION['login'] == 2)
{
include('_private/utente.php');
exit;
}
else if($_SESSION['login'] == 3)
{
include('_private/utente2.php');
exit;
}
else {
include('index.php');[/PHP]
che ne dite? ci siamo??
-
elseif tutto attaccato
[php]
if($_SESSION['login'] == 1)
{
include('_private/tizio.php');
exit;
}
elseif($_SESSION['login'] == 2)
{
include('_private/utente.php');
exit;
}
elseif($_SESSION['login'] == 3)
{
include('_private/utente2.php');
exit;
}
else {
include('index.php');
[/php]
-
inoltre sto realizzando le note per l'utente, ma quale è la query esatta da passare al db? i intendo passare la variabile $open nella tabella utenti nella colonna note sulla riga dell'id 1... come faccio???ciao e grazie
-
nella query update/insert dipende da quando la passi la variabile
-
io sto provando con
[PHP]$strSQL = "INSERT INTO utenti (note) , WHERE id 1";
$strSQL .= "VALUES('$open')";
mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());
però mi dà errore di sintassi[/PHP]
come faccio??
grazie per l'indicazione dell'elseif!
-
Quella query è completamente sbagliata.
UPDATE utenti SET note = '$open' WHERE id = '1'
-
ok grazie mille per la query che mi hai dato, ma sono nei guai con un'altra query, devo visualizzare all'interno del tag <td> </td> il contenuto del campo quando della tabella utenti, come faccio?
ho provato con select e uno script trovato sulla rete ma non risco in pratica mi restituisce la parola "Array" invece che "ciao".
A cosa è dovuto???x
Mi potete aiutare???:(:bho:
Ciao e buon pranzo
-
devi emttere $varaibile['nomedelcampo']
altriemtni ti dice appunto array
-
ciao, grazie
ma dove lo devo mettere?
[php]$query = "SELECT quando FROM utenti WHERE id='1'";
$result = mysql_query($query);
$numfields = mysql_num_fields($result);
for ($i=0; $i < $numfields; $i++)while ($row = mysql_fetch_row($result))
{
echo $row;
}
echo "EVENTO!";?>[/php]Anche dello script, non sono sicuro, mi potreste dire un modo più efficiente e veloce??(se ce n'è)??