使用PHP Curl发布数据不起作用

使用PHP Curl发布数据不起作用,php,curl,Php,Curl,首先,我是卷发新手。我试图将表单数据直接发布到处理文件process.php。但它不起作用。 我的表格在下面 <!-- bla.html--> <html> <body> <form action="process.php" method="post"> <input type="text" name="name"> <input type="submit" value="submit"&g

首先,我是卷发新手。我试图将表单数据直接发布到处理文件process.php。但它不起作用。 我的表格在下面

<!-- bla.html-->
<html>
<body>
    <form action="process.php" method="post">
        <input type="text" name="name">
        <input type="submit" value="submit">
    </form>
</body>

并且process.php文件是

<?php
   echo $name=$_POST['name'];
?>

我试图从一个名为curl.php的文件中传递数据。下面是哪个

<?php
$url="http://localhost/test/process.php";

$data=array('name=raheem');

$ch = curl_init();

                // $ch = curl_init(); 
                curl_setopt ($ch, CURLOPT_URL, $url); 
                curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
                //curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); 
                curl_setopt ($ch, CURLOPT_TIMEOUT, 60); 
                curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 0); 
                curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
                //curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie); 
                curl_setopt ($ch, CURLOPT_REFERER, $url); 

                curl_setopt ($ch, CURLOPT_POSTFIELDS, $data); 
                curl_setopt ($ch, CURLOPT_POST, 1); 
                echo $result = curl_exec ($ch);
?>

它显示正确。但是在将名称传递到process.php文件之前,我需要先登录。我写了下面的代码。但它不起作用

<?php

    $username="myuser"; 
    $password="mypass"; 
    $url="http://localhost/test/login.php"; 
    //$cookie="cookie.txt"; 

    $postdata = "txtuname=".$username."&txtpass=".$password;

    $ch = curl_init(); 
    curl_setopt ($ch, CURLOPT_URL, $url); 
    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    //curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); 
    curl_setopt ($ch, CURLOPT_TIMEOUT, 60); 
    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 0); 
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
    //curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie); 
    curl_setopt ($ch, CURLOPT_REFERER, $url); 

    curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata); 
    curl_setopt ($ch, CURLOPT_POST, 1); 
    $result = curl_exec ($ch); 
    if($result) {
            $url="http://localhost/test/process.php";

            $data="name=raheem&email=raheem@gmail.com";

            $ch = curl_init();

                            // $ch = curl_init(); 
                            curl_setopt ($ch, CURLOPT_URL, $url); 
                            curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
                            //curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); 
                            curl_setopt ($ch, CURLOPT_TIMEOUT, 60); 
                            curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 0); 
                            curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
                            //curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie); 
                            curl_setopt ($ch, CURLOPT_REFERER, $url); 

                            curl_setopt ($ch, CURLOPT_POSTFIELDS, $data); 
                            curl_setopt ($ch, CURLOPT_POST, 1); 
                            echo $result = curl_exec ($ch);
    }


?>


在这里,login.php将使用用户名和密码,如果用户存在,则重定向到bla.html。但它不起作用。感谢您的帮助。谢谢你不工作是什么意思?代码正在执行吗?它是否返回错误?没有显示任何错误我可以手动登录并通过代码执行其余操作吗?我使用了curl_close();你不工作是什么意思?代码正在执行吗?它是否返回错误?没有显示任何错误我可以手动登录并通过代码执行其余操作吗?我使用了curl_close();