Detaillierte Erläuterung des Beispielcodes für die ThinkPHP-Anmeldefunktion

angryTom
Freigeben: 2020-03-19 09:37:26
nach vorne
3796 Leute haben es durchsucht

Die Benutzeranmeldefunktion ist eine häufige Anforderung in der PHP-Programmierung. Das ThinkPHP-Beispiel in diesem Artikel vervollständigt hauptsächlich das Schreiben des Codes zum Aufrufen der Homepage nach erfolgreicher Registrierung und zeigt Ihnen, wie Sie die Funktion zum Anmelden von Benutzern implementieren.

Detaillierte Erläuterung des Beispielcodes für die ThinkPHP-Anmeldefunktion

Detaillierte Erläuterung des Beispielcodes für die ThinkPHP-Anmeldefunktion

Spezifische Schritte:

Schritt 1: Fügen Sie Folgendes hinzu:

'USER_AUTH_KEY'=>'authId'
Nach dem Login kopieren

zur Datei config.php. Das Beispiel lautet wie folgt:

(empfohlenes Tutorial: thinkphp-Tutorial)

 'mysql',// 指定数据库是mysql
'DB_HOST'=> 'localhost',
'DB_NAME'=>'myuser', // 数据库名
'DB_USER'=>'root',
'DB_PWD'=>'', //您的数据库连接密码
'DB_PORT'=>'3306',
'DB_PREFIX'=>'think_',//数据表前缀
'USER_AUTH_KEY'=>'authId'
);
?>
Nach dem Login kopieren

Schritt 2: Verwenden Sie:

Session::set(C('USER_AUTH_KEY'),$user);
Nach dem Login kopieren

im insert()-Code in AdminAction.class.php, um den Login-Benutzernamen für die Sitzung zu speichern.

Der vollständige Implementierungscode lautet wie folgt:

public function insert()
{
header('Content-Type:text/html; charset=utf-8');//防止出现乱码
$user=$_POST['user'];
$this->verifyCheck();
$Pagemodel = D("user");
$vo = $Pagemodel->create(); 
if(false === $vo) die($Pagemodel->getError());
$topicid = $Pagemodel->add(); //add方法会返回新添加的记录的主键值
if($topicid)
{ // www.jbxue.com
//$_SESSION[C('USER_AUTH_KEY')]=$user;//不能用此句
Session::set(C('USER_AUTH_KEY'),$user);
//dump(Session::get('authId')); 
echo "<script>alert(&#39;数据库添加成功&#39;);location.href=&#39;http://127.0.0.1/zhuce/index.php/index&#39;;</script>";
}
else throw_exception("<script>alert(&#39;数据库添加失败&#39;);history.back();</script>");
}
Nach dem Login kopieren

Schritt 3: Verwenden Sie if(!Session::is_set(C('USER_AUTH_KEY'))) in der IndexAction.class. PHP-Datei Stellen Sie fest, ob der Benutzer angemeldet ist.

Session::get(C(&#39;USER_AUTH_KEY&#39;))是获取登录用户的名。
Nach dem Login kopieren

Der spezifische Code lautet wie folgt:

public function index()
{ //www.jbxue.com
if(!Session::is_set(C(&#39;USER_AUTH_KEY&#39;)))
//if(!isset($_SESSION[&#39;USER_AUTH_KEY&#39;])||($_SESSION[&#39;USER_AUTH_KEY&#39;]==0))//不能用此句
{
$msg="用户没有登录"; 
}
else
{
$msg=Session::get(C(&#39;USER_AUTH_KEY&#39;)).&#39;欢迎你回来&#39;;
}
$this->assign(&#39;msg&#39;,$msg);
$this->display(); 
}
Nach dem Login kopieren

Schritt 4: Zeigen Sie die Vorlage auf der Startseite an, der Code lautet wie folgt:

<body>
{$msg}<br />
这是我的首页
</body>
Nach dem Login kopieren

Zusammenfassung:

Der Login-Code dreht sich um Schreibsitzungen, Bewertungssitzungen und Lesesitzungen.

Um eine Sitzung zu schreiben, verwenden Sie: Session::set(C('USER_AUTH_KEY'),$user);

Um eine Sitzung zu beurteilen, verwenden Sie: if(!Session::is_set( C('USER_AUTH_KEY') ));

Zum Lesen der Sitzung: Session::get(C('USER_AUTH_KEY'))

Chinesische PHP-Website, viele kostenlose MySQL-Videos Tutorials, willkommen zum Online-Lernen!

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Beispielcodes für die ThinkPHP-Anmeldefunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage