Heim > Backend-Entwicklung > PHP-Tutorial > PHP implementiert einfach eine simulierte Anmeldung

PHP implementiert einfach eine simulierte Anmeldung

巴扎黑
Freigeben: 2023-03-16 09:06:01
Original
1862 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die einfache Implementierung der simulierten Anmeldefunktion in PHP vorgestellt, einschließlich der zugehörigen Bedienfähigkeiten von PHP mithilfe von Curl, um eine simulierte Anmeldung zu erreichen. Freunde in Not können sich darauf beziehen

Das Beispiel dieses Artikels erzählt die einfache Implementierung der simulierten Login-Funktion in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Ohne Berücksichtigung des Bestätigungscodes implementiert PHP die simulierte Anmeldung. Die im Internet angegebene Methode besteht im Allgemeinen darin, Curl zu verwenden, um die Implementierung zu simulieren, aber Curl implementiert Die Serverseite und die Sitzung werden auf der Serverseite eingerichtet und können nur die Anmeldung simulieren und die Daten nach der Anmeldung abrufen. Die Cookie-Informationen können nicht auf dem Client platziert werden (zumindest habe ich keine Möglichkeit gefunden, dies zu finden). weit). Endlich kann ich es durch einen versteckten Iframe erreichen.

1. Curl implementiert den Code für die simulierte Anmeldung (es implementiert nur den Aufbau einer Sitzung zwischen dem Server und dem Server, baut jedoch nicht tatsächlich eine Sitzung zwischen dem Client und dem Server auf)


<?php
$cookie_jar = tempnam(&#39;./tmp&#39;,&#39;cookie&#39;);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, &#39;http://192.168.0.22/logincheck.php&#39;);
curl_setopt($ch, CURLOPT_POST, 1);
$request = &#39;UNAME=admin&PASSWORD=123456&#39;;
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
//把返回来的cookie信息保存在$cookie_jar文件中
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
//设定返回的数据是否自动显示
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//设定是否显示头信息
curl_setopt($ch, CURLOPT_HEADER, false);
//设定是否输出页面内容
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_exec($ch);
curl_close($ch);
//get data after login
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, &#39;http://192.168.0.22/general/&#39;);
curl_setopt($ch2, CURLOPT_HEADER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie_jar);
$orders = curl_exec($ch2);
echo $orders;
exit;
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
echo strip_tags($orders);
echo &#39;
'; curl_close($ch2); ?>
Nach dem Login kopieren

2. Realisieren Sie die Kommunikation zwischen Client und Server über einen versteckten Iframe (kann bestimmte Sicherheitsrisiken mit sich bringen)


<html>
<title></title>
<body>
<?
$goURL="http://192.168.0.22/general/email/";
?>
<iframe name="hiddenLoginFrame" onload="get_pass()" src="ceshi1.php"  id="hiddenLoginFrame" width=0 height=0 frameborder=0 scrolling=no style="display:none;">
</iframe>
<script Language="JavaScript">
  function get_pass()
  {
    window.open("<?=$goURL ?>");
    window.close();
  }
</script>
</body>
</html>
Nach dem Login kopieren

ceshi1 .php


<html>
<head>
  <title>ceshi</title>
</head>
<body onload="get_pass1();">
<form name="form1" method="post" target="hiddenLoginFrame" action="http://192.168.0.22/logincheck.php">
  <input type="text" value="admin" name="UNAME">
  <input type="text" value="123456" name="PASSWORD">
</form>
</body>
<script Language="JavaScript">
  function get_pass1()
  {
    //document.form1.action=u_url;
    document.form1.submit();
  }
</script>
</html>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonPHP implementiert einfach eine simulierte Anmeldung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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