PHP模拟表单的post请求实现登录

项目需要,要写一个不要表单提交的程序,查了很多资料,最后用CURL实现模拟post提交,示例程序如下:

index.php

<?php
	header("Content-type:text/html;charset=utf-8");
	
	$stuid = "201300301013";
	$pwd = "111336";
	$uri = "127.0.0.1/login.php";//这里换成你服务器的地址
	// 参数数组
 	$data = array (
			'stuid' => $stuid,
 			'pwd' => $pwd			
 	);
	
	$ch = curl_init ();  //初始化curl
	
	curl_setopt ( $ch, CURLOPT_URL, $uri );
	curl_setopt ( $ch, CURLOPT_POST, 1 );  //使用post请求
	curl_setopt ( $ch, CURLOPT_HEADER, 0 );
	curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
	curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data);  //提交数据
	curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, true);  //重定向地址也输出
	$return = curl_exec ( $ch ); //得到返回值
	
	curl_close ( $ch );  //关闭
	
	print_r($return);  //输出返回值

?>


login.php

<?php
      $user = $_POST['stuid'];
      $pwd = $_POST['pwd'];
      
     /*
          这里对得到的数据进行处理
     */
      
      echo "成功!";  //最后输出结果

?>

浏览器会输出“成功”。

这只是个简单的例子,curl的东西还有很多,需要研究的还很多。如果用php的curl写爬虫的话,机制不太好,建议用java实现爬

虫程序。


本人经验,仅供参考!


你可能感兴趣的:(PHP,curl)