Heim Backend-Entwicklung PHP-Tutorial PHP-Methode zur Realisierung einer Hintergrund-Remote-Anmeldung beim Zhengfang Educational Affairs System basierend auf Curl

PHP-Methode zur Realisierung einer Hintergrund-Remote-Anmeldung beim Zhengfang Educational Affairs System basierend auf Curl

May 31, 2018 pm 05:37 PM
curl php 远程

Dieser Artikel stellt hauptsächlich die Methode der Remote-Anmeldung beim Zhengfang Educational Affairs System vor, die auf dem PHP-Curl-Hintergrund basiert. Er analysiert die Betriebsfähigkeiten von PHP mithilfe von Curl und Cookies, um eine Remote-Anmeldung in Form von Beispielen zu erreichen it

Dieser Artikel beschreibt die Methode der Remote-Anmeldung beim Zhengfang Academic Affairs System basierend auf dem PHP-Curl-Hintergrund. Ich teile es Ihnen als Referenz mit:

Ich habe seit letztem Jahr darüber nachgedacht, wie ich dieses Problem lösen kann, aber der Bestätigungscode muss ausgefüllt werden In.

Wenn Sie Tickets wie 360 ​​​​erhalten können, das den Bestätigungscode automatisch erkennt, ist alles in Ordnung. Kein Unsinn mehr. Zurück zum Thema

Hier wird CURL verwendet.

Designidee: Melden Sie sich zuerst auf der Seite an, um COOKIES zu erhalten, und verwenden Sie dann die Cookies, um den Server für den Bestätigungscode zu finden. Stellen Sie abschließend alle Informationen bereit, die der Server benötigt.

(Diese Art des Denkens besteht darin, den Browser, der auf die Seite zugreift, vollständig zu simulieren, und der grundlegende Unterschied besteht darin, dass es sich um einen Menschen gegenüber einer Maschine handelt)

public function index(){
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $url); //填对于的URL就可以了
 curl_setopt($ch, CURLOPT_HEADER, 0);
 curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
 curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); //主要cookie的路径,本保存页面cookie
 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //返回结果自动输出
 $response = curl_exec($ch);
 curl_close($ch);
}
Nach dem Login kopieren

Besuchen Sie die Homepage des Zhengfang Academic Affairs System. Der erste Schritt besteht darin, den HTML-Code in die Seite einzubinden, und der zweite Schritt besteht darin, die Cookies abzurufen.

Noch weitere Fragen? Was nützt es, HTML zu bekommen?

Wenn Sie den HTML-Code auf der Startseite des akademischen Verwaltungssystems genau beobachten, werden Sie feststellen, dass darin viele versteckte Felder vorhanden sind und diese Felder sich ändern.
Sie können sich also genauso gut den gesamten HTML-Code besorgen, ihn analysieren und dann alle erforderlichen Felder extrahieren.

HTML-Struktur

Haben Sie das gesehen? ? Für die Übermittlung von Daten sind ausgeblendete Felder erforderlich, und es dürfen nicht zu viele Felder vorhanden sein.

Seiteneffekt

Als nächstes möchte ich die wichtigste Frage beantworten: Wie erhalte ich den Bestätigungscode?

Zuerst wollte ich einfach nur

<img src="xxxx/CheckCode.aspx" />
Nach dem Login kopieren

. Obwohl der Bestätigungscode herauskommt, gehört er nicht Ihnen. Wenn Sie also die Remote-Anmeldung speichern, wird Ihnen mitgeteilt, dass der Bestätigungscode falsch ist

Wie erhalten Sie also Ihren eigenen Bestätigungscode? Was mir zu diesem Zeitpunkt natürlich in den Sinn kommt, sind Kekse.

Wie der Server unterscheidet, ob die Browseranfrage für dieselbe Person bestimmt ist, hängt von der Sitzungs-ID im Cookie ab.

Auf diese Weise. Wenn Sie die Cookies, die Sie auf der Homepage erhalten haben, nehmen und den Server nach Ihrem Bestätigungscode fragen, wird es dann zu einer Fehlermeldung kommen?

public function getImg()
{
    $url = "http://xxxx/CheckCode.aspx";
    $filedir = SITE_PATH."/TMP/Cookies";
    $cookie_file = $filedir."/cookie.txt";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); //
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_TIMEOUT, "10");
    header("Content-type:image/gif"); //这个视不同图片格式不一样,请注意
    echo curl_exec($ch);
    curl_close($ch);
}
Nach dem Login kopieren

Dann rufen Sie diese Methode auf anderen Seiten auf und Sie können den Bestätigungscode erhalten.

CURLs PHP-Anfrage und das von Ihrem Browser ausgegebene PHP gehören zu zwei verschiedenen Threads, daher werden ihre Cookies unterschiedlich geteilt.

Sie können sich auf diese Weise anmelden, aber denken Sie nicht, dass Sie nach der Anmeldung auf diese Weise alle Funktionen bedienen können, dann liegen Sie falsch. Es gibt noch ein kleines Detail. .

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

Implementierung und Effizienzanalyse von vier Sortieralgorithmen in PHP [Blasensortierung, Einfügungssortierung, Auswahlsortierung und Schnellsortierung]

Zusammenfassung der PHP-Interviewfragen

Über die Think PHP Deployment Nginx-Konfiguration

Das obige ist der detaillierte Inhalt vonPHP-Methode zur Realisierung einer Hintergrund-Remote-Anmeldung beim Zhengfang Educational Affairs System basierend auf Curl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP arbeitet mit Datenbank CakePHP arbeitet mit Datenbank Sep 10, 2024 pm 05:25 PM

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

See all articles