PHP verwendet Curl, um eine simulierte Formularübermittlungsfunktion zu implementieren

墨辰丷
Freigeben: 2023-03-27 13:24:01
Original
1918 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich detailliert vor, wie PHP eine einfache simulierte Formularübermittlungsfunktion implementiert. Es hat einen gewissen Referenzwert.

Der spezifische Inhalt ist wie folgt

//初始化curl
$ch = curl_init();
$url = 'xxx';
$option = [
 CURLOPT_URL => $url,
 CURLOPT_HEADER => 1,
 CURLOPT_RETURNTRANSFER => 1,
];
curl_setopt_array($ch, $option);
$output = curl_exec($ch);
preg_match_all('/Set-Cookie: (.*);/i', $output, $str); //正则匹配
//如果有token的话就获取token
preg_match('/token = \"(.*)\"/i', $output, $token);
if (empty($str)) {
 return false;
}
$cook = $str[1];
$cookie = implode(';', $cook);

$up_url = 'xxx';
$post_data = [
 'name' => 'test_',
 'tel' => '18819271234',
 'email' => 'qqhahadfdfads@163.com',
 'message' => 'this is my message;',
 '_token' => $token[1],
];
$options = [
 CURLOPT_URL => $up_url,
 CURLOPT_RETURNTRANSFER => 1,
 CURLOPT_HEADER => 1,
 CURLOPT_USERAGENT => "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36",
 CURLOPT_COOKIESESSION => 1,
 CURLOPT_POST => 1,
 CURLOPT_POSTFIELDS => $post_data,
 CURLOPT_COOKIE => $cookie
];
curl_setopt_array($ch, $options);
$res = curl_exec($ch);
// $info = curl_getinfo($ch);
if ($res === FALSE) {
 p('curl Error: ' . curl_error($ch));
}
curl_close($ch);
p($res);
Nach dem Login kopieren

stammt von einer Website, die auf Basis von Laravel entwickelt wurde. Es gibt einen csrf_token im Formular in Laravel. Sie müssen also den Token besorgen und den Cookie mitbringen 🎜>

Beachten Sie hier, dass Sie nicht zwei Curls gleichzeitig initialisieren können, da sich sonst das Token oder Cookie ändert. Wenn Sie zwei Curls initialisieren müssen, können Sie die Einstellung CURLOPT_COOKIEJAR verwenden.

Dann führen Sie Weiter aus:

binggo

Bei der Verwendung von Curl ist das Wichtigste eine Cookie-Anwendung. Nachdem Sie das Handbuch durchgesehen haben sind vier Cookie-Einstellungen. ..CURLOPT_COOKIESESSION, CURLOPT_COOKIE, CURLOPT_COOKIEFILE, CURLOPT_COOKIEJAR

Verwandte Empfehlungen:

php verwendet curl, um die FTP-Datei-Download-Funktion zu implementieren

php sendet XML-Daten über curl und erhält XML-Daten

php curl wird zurückgegeben. Detaillierte Erläuterung der Wertschritte

Das obige ist der detaillierte Inhalt vonPHP verwendet Curl, um eine simulierte Formularübermittlungsfunktion zu implementieren. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!