Hier ist mein Problem, ich benutze Jquery Mobile zum ersten Mal (Student Web-Entwickler), um eine Web-App zu machen. Also muss ich eine Anmeldeseite erstellen und dann eine Sitzung starten. Aber ich weiß nicht, wie ich es machen soll. Funktioniert es nur mit PHP-Session (weil ich weiß, wie es mit PHP nur geht ..)? Oder muss ich das wirklich anders machen?
Dies ist, wie ich es tat:Starting Sitzung auf Jquery Mobile, ohne Ajax
<?php
include 'fonctions.php';
if (isset($_POST['valider'])){
if ((isset($_POST['ident']) && !empty($_POST['ident']))
&& (isset($_POST['psw']) && !empty($_POST['psw']))) {
// récupération des infos de connex
$identifiant=$_POST['ident'];
$psw=$_POST['psw'];
if(connectionIdent($identifiant,$psw) ===true){
session_start();
$_SESSION['id'] = $identifiant;
$_SESSION['psw'] = hash("sha256",$psw);
header ('Refresh:0; URL= http://localhost/acces.php#radio');
}else{
Echo 'Identifiant ou mot de passe incorrects';
header ('Refresh :3; URL=http://localhost/acces.php#connexion');
}
}
}
?>
Und meine Zielseite:
<?php
if (isset($_SESSION['id']) && isset($_SESSION['psw'])){
echo 'Votre login est '.$_SESSION['login'].' et votre mot de passe est '.$_SESSION['pwd'].'.';
?>
<div data-role="page" id="radioSansCo">
<div data-role="main" class="ui-content">
<div data-role="panel" class="sidenav" id="mypanel" data-display="overlay" data-position="left" >
<a href="#" class="buttonnav" id="liennav">Forum</a>
<a href="#" class="buttonnav" id="liennav">Bon plans</a>
<a href="#" class="buttonnav" id="liennav">Actualités</a>
<a href="#" class="buttonnav" id="liennav">Deconnexion</a>
</div>
<a href="#mypanel"><span id="sandwich">☰</span> </a>
<img src="images/logo.png" alt="Logo" id="logocentral">
</div>
</div>
<?php
}
?>
Es gibt keine "Sitzung" in JS. Sie können jedoch ['localStorage'] (https://developer.mozilla.org/en/docs/Web/API/Window/localStorage) verwenden, um einige Daten auf der Client-Seite zu speichern. ** Verwenden Sie es nicht zum Speichern des Benutzerpassworts **, da dies nicht sicher wäre. Dein PHP-Weg, wie du ihn gepostet hast, ist richtig. –