- Home
- Categorie
- Coding e Sistemistica
- PHP
- sessioni php
-
sessioni php
salve, sono nuovo qui e cercando spunti su come creare sessioni sono arrivato in questo forum.
premetto che sono un neofita in php e da poco ho cominciato in html, pero' ho un estremo bisogno di aiuto.ho bisogno di creare una sessione la quale registri nel database, alla fine di una sessione di un qualsiasi utente, tutti i dati che sono stati da lui compilati nel sito attraverso dei form.
Non sono riuscito a creare ancora una sessione funzionante e quella che ho provato in default non mi trasmette nella cartella che ho creato i dati di sessione.
Qualcuno puo' aiutarmi per favore?
grazie
-
Prova questo script che ti do in allegato...non è niente di speciale...però prova...
-
GRAZIE!
il mio utente pero' non fa nessun tipo di login... deve compilare il form di inizio pagina con alcuni dati personali e poi selezionare dei valori nelle pagine successive... alla fine di tutto trasmettere al database.
quale script mi consigli tra quelli che mi hai mandato?
ho visto sessione, ma come creo lo script giusto per le mie variabili nel mio caso?
-
posto quello che ho fatto finora.
prima pagina:<?php
//Recupero username
$user = $_POST['user'];
$gender = $_POST['gender'];
$year = $_POST['year'];
$month = $_POST['month'];
$day = $_POST['day'];
$country = $_POST['country'];//Apro la sessione e...
session_start();
//Salvo i dati...
$_SESSION['user'] = $user;
$_SESSION['gender'] = $gender;
$_SESSION['year'] = $year;
$_SESSION['month'] = $month;
$_SESSION['day'] = $day;
$_SESSION['country'] = $country;$connessione=mysql_connect("localhost", ");
$selezione_db=mysql_select_db("guest_book", $connessione);
$inserimento=mysql_query( "insert into messaggi (user, gender, date_of_birth,country, data_ora) values ( '" . $_POST['user'] . "','" . $_POST['gender'] . "','" . $_POST['year'] . "-" . $_POST['month'] . "-" . $_POST['day'] . "', '" . $_POST['country'] . "', now())" );
$sid = session_name() . '=' . session_id();
session_write_close();
header("Location: ht");
?>seconda pagina:(credo sbagliato lo script)
<?php
Header( "Location: //moduloguest2.htl" );
?>
<?
//Apro la sessione e...
session_start();
//Recupero i dati...
$id_user = $_SESSION['id_user'];
//facciamo una stampata a video!
echo "Ciao " . $user;
?><body>
<?php
$connessione=mysql_connect("localhost", "giorgio", "pdoigroig");
$selezione_db=mysql_select_db("guest_book", $connessione);
?>
<?php
$inserimento=mysql_query( "insert into messaggi (activacione1, data_ora) values ( '" . $_POST['activacione1'] . "', now())" );
?>
</body>
</html>pero' la seconda pagina non credo sia giusta..
-
Innanzitutto eco il primo errore nella second apagina:
[php]
<?php
Header( "Location: moduloguest2.html" );
?>
[/php]
Poi:
<?php
//Recupero username
$user = $_POST['user'];
$gender = $_POST['gender'];
$year = $_POST['year'];
$month = $_POST['month'];
$day = $_POST['day'];
$country = $_POST['country'];
include("sessioni.php");$connessione=mysql_connect("localhost", ");
$selezione_db=mysql_select_db("guest_book", $connessione);
$inserimento=mysql_query( "insert into messaggi (user, gender, date_of_birth,country, data_ora) values ( '" . $_POST['user'] . "','" . $_POST['gender'] . "','" . $_POST['year'] . "-" . $_POST['month'] . "-" . $_POST['day'] . "', '" . $_POST['country'] . "', now())" );
$sid = session_name() . '=' . session_id();
session_write_close();
header("Location: ht");
?>crei il file sessioni.php
<?php
session_start();
$_SESSION['entrato'] = "vero";//crea una nuova sessione che verifica se è stato eseguito il login
$_SESSION['user'] = $user;
$_SESSION['gender'] = $gender;
$_SESSION['year'] = $year;
$_SESSION['month'] = $month;
$_SESSION['day'] = $day;
$_SESSION['country'] = $country;
?>poi, nell'altra pagina
<?
include("sessione.php");
if(!$_SESSION['entrato'] = "vero"){
print("Effettua l'accesso!");
}else{
$usr=$_SESSION['user'];
echo "Ciao $usr";
}
?><body>
<?php
$connessione=mysql_connect("localhost", "giorgio", "pdoigroig");
$selezione_db=mysql_select_db("guest_book", $connessione);
$inserimento=mysql_query( "insert into messaggi (activacione1, data_ora) values ( '" . $_POST['activacione1'] . "', now())" );
<?php
Header( "Location: //moduloguest2.hmtl" );
?>
?>
</body>
</html>
è un po grossolano, non l'ho provato
-
l'ho provato e cercato di aggiustarlo ma mi da numerosi errori..
-
non riesco ad uscirne dal problema..:bho:
ad ogni utente sono assegnati dei record in diversi campi nel database:
Campo
id_user
user
gender
date_of_birth
countryquesti vengono riempiti dall'utente tramite form nella prima pagina del sito.
POI:stessa tabella, altri campi
activacione1
valencia1 alla pagina 2activacione2
valencia2 alla pagina 3e csoi' via....
Il campo id_user è autoincremente ed è chiave primaria.
Quando poi vado a nserire altri record in altri campi della stessa tabella vorrei che lo possa inserire nel campo dove c'è id_user , ovvero l'ID dell'utente corrente.
All'atto del primo inserimento dovrei salvare in sessione l'ID autoincrement dell'utent.
Il problema mio risiede nel fatto che le pagine php aprono la connessione al database per inserire record nel campo:prima pagina:
mysql_connect("localhost", "");
$selezione_db=mysql_select_db("guest_book", $connessione);
$inserimento=mysql_query( "insert into messaggi (user, gender, date_of_birth,country, data_ora) values ( '" . $_POST['user'] . "','" . $_POST['gender'] . "','" . $_POST['year'] . "-" . $_POST['month'] . "-" . $_POST['day'] . "', '" . $_POST['country'] . "', now())" );
poipoi un'altra connessione al database per la seconda pagina,
una terza pagina con altra select e altra connessione e cosi' via..il problema è che ovviamente ad ogni connessione risulta un utente diverso anche se in realta' è sempre lo stesso
Vorrei che il mio utente rimanga con lo stesso id-autoincrement per tutti i dati che inserisce attraverso la compilazione delle varie form, magari inserendo poi alla fine tutto nel database, credo che posso farlo attraverso una sessione.
ma non sono riuscito a trovare lo script...:xsono in fase disperazione. aiuto...
grazie.