Hi,
I am trying to automated a boring, regular job that I have to do daily. I am trying to automated this job 100% at server end in php by using CURL:
- Login to a site https://www.tutorsteach.com/login.aspx automatically.
- then go to this page: https://www.tutorsteach.com/inquiry.aspx.
- Get the html source code of this page in variable and then scan it for new email ids.
- Then send them a mail.
This is my code:
<?php
// INIT CURL
$ch = curl_init();
// SET URL FOR THE POST FORM LOGIN
curl_setopt($ch, CURLOPT_URL, 'https://www.tutorsteach.com/Default.aspx');
// ENABLE HTTP POST
curl_setopt ($ch, CURLOPT_POST, 1);
// SET POST PARAMETERS : FORM VALUES FOR EACH FIELD
$EVENTTARGET = "left1$lnkLogin";
$EVENTARGUMENT = "";
$VIEWSTATE = "/wEPDwUKMTcwOTg5NzA3OA9kFgICAQ9kFgQCBQ9kFgICAQ9kFgICAQ8WAh4EVGV4dAWkKTxwPjxzdHJvbmc+V2VsY29tZSB0byBUdXRvcnNUZWFjaC5jb20gLS0gPGZvbnQgY29sb3I9ImJyb3duIj5UaGUgbGFyZ2VzdCB0dXRvciBwcm92aWRlciBpbiB0aGUgcmVnaW9uITwvZm9udD48L3N0cm9uZz48YnIvPjxpPlNpbmNlIDE5OTk8L2k+PC9wPg0KPHA+PGEgaHJlZj0iRmxhc2gvdG91ci5odG0iIG9uY2xpY2s9IndpbmRvdy5vcGVuKCdGbGFzaC90b3VyLmh0bScsJ1JJQycsJ3dpZHRoPTYwMCxoZWlnaHQ9NDM4LHJlc2l6YWJsZT1ubyxzY3JvbGxiYXJzPW5vLHRvb2xiYXI9bm8sbWVudWJhcj1ubyxsb2NhdGlvbj1ubyxzdGF0dXM9bm8sbGVmdD0xMDAsdG9wPTQwLHNjcmVlblg9MTAwLHNjcmVlblk9NDAnKTtyZXR1cm4gZmFsc2U7Ij48aW1nIHNyYz0iaW1hZ2VzL1RvdXIuanBnIiBhbHQ9IlRha2Ugb3VyIFNUVURFTlQgVE9VUiIgYWxpZ249InJpZ2h0IiBib3JkZXI9IjAiLz48L2E+PC9wPg0KPGRpdiBhbGlnbj0ibGVmdCI+PHN0cm9uZz5UdXRvcnNUZWFjaC5jb208L3N0cm9uZz48YnIvPg0KICAgICZuYnNwOy4uaXMgcHJvdWQgdG8gc3VwcG9ydCB0aGUgPGEgaHJlZj0iQ2hpbGRMZWZ0Lmh0bSIgb25jbGljaz0id2luZG93Lm9wZW4oJ0NoaWxkTGVmdC5odG0nLCdSSUMnLCd3aWR0aD00NTAsaGVpZ2h0PTI2MCxyZXNpemFibGU9bm8sc2Nyb2xsYmFycz15ZXMsdG9vbGJhcj1ubyxtZW51YmFyPW5vLGxvY2F0aW9uPW5vLHN0YXR1cz1ubyxsZWZ0PTE3MCx0b3A9NSxzY3JlZW5YPTE3MCxzY3JlZW5ZPTUnKTtyZXR1cm4gZmFsc2U7Ij5ObyBDaGlsZCBMZWZ0IEJlaGluZDwvYT4gcHJvZ3JhbSENCjwvZGl2Pg0KPHA+PGEgaHJlZj0iaGVsbG8uYXNweCI+PGltZyBzcmM9ImltYWdlcy9PbmxpbmUtVG9vbC5naWYiIGFsdD0iT25saW5lIFR1dG9yaW5nIGFuZCBXaGl0ZWJvYXJkIFRvb2wiIHdpZHRoPSIxMDUiIGFsaWduPSJyaWdodCIgYm9yZGVyPSIwIiBoZWlnaHQ9IjMwIi8+PC9hPjwvcD4NCjxwIGFsaWduPSJjZW50ZXIiPiAuLmFuZCA8c3Ryb25nPjxmb250IGNvbG9yPSJncmVlbiI+Y2VsZWJyYXRlczwvZm9udD4gPGEgaHJlZj0iTW9tRGF5Lmh0bSIgb25DbGljaz0id2luZG93Lm9wZW4oJ01vbURheS5odG0nLCdSSUMnLCd3aWR0aD0zNzUsaGVpZ2h0PTI2MSxyZXNpemFibGU9bm8sc2Nyb2xsYmFycz15ZXMsdG9vbGJhcj1ubyxtZW51YmFyPW5vLGxvY2F0aW9uPW5vLHN0YXR1cz1ubyxsZWZ0PTE1MCx0b3A9MzUsc2NyZWVuWD0xNTAsc2NyZWVuWT0zNScpO3JldHVybiBmYWxzZTsiPjxmb250IGNvbG9yPSJkZWVwcGluayI+PEk+TW90aGVyJ3MgRGF5PC9JPjwvYT48L2ZvbnQ+IDxmb250IGNvbG9yPSJkYXJrZ3JlZW4iPnRoaXMgbW9udGguPC9mb250Pjxici8+PGJyLz48Zm9udCBjb2xvcj0iYnJvd24iPkZSRUUgU2VhcmNoIEZvciBJTi1IT01FIGFuZCBPTkxJTkUgVHV0b3JzPGk+IEFsd2F5czwvaT4gLSBObyBuZWVkIHRvIHNpZ24tdXAhPC9mb250Pjwvc3Ryb25nPjwvcD4NCjx1bD4NCgk8bGk+PGEgaWQ9Imxua19rX2p1bmlvciIgaHJlZj0ibG9jYXRlVHV0b3IuYXNweD9EaXNjaXBsaW5lPTEiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX2hpZ2hzY2hvb2wiIGhyZWY9ImxvY2F0ZVR1dG9yLmFzcHg/RGlzY2lwbGluZT0yIj48L2E+PC9saT4JCQkgICAgDQoJPGxpPjxhIGlkPSJsbmtfY29sbGVnZSIgaHJlZj0ibG9jYXRlVHV0b3IuYXNweD9EaXNjaXBsaW5lPTMiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX3Rlc3RfcHJlcCIgaHJlZj0ibG9jYXRlVHV0b3IuYXNweD9EaXNjaXBsaW5lPTQiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX2ZvcmVpZ25fbGFuZ3VhZ2UiIGhyZWY9ImxvY2F0ZVR1dG9yLmFzcHg/RGlzY2lwbGluZT05Ij48L2E+PC9saT4NCgk8bGk+PGEgaWQ9Imxua19jb21wdXRlciIgaHJlZj0ibG9jYXRlVHV0b3IuYXNweD9EaXNjaXBsaW5lPTgiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX2J1c2luZXNzIiBocmVmPSJsb2NhdGVUdXRvci5hc3B4P0Rpc2NpcGxpbmU9MTAiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX2FydCIgaHJlZj0ibG9jYXRlVHV0b3IuYXNweD9EaXNjaXBsaW5lPTUiPjwvYT48L2xpPg0KCTxsaT48YSBpZD0ibG5rX211c2ljIiBocmVmPSJsb2NhdGVUdXRvci5hc3B4P0Rpc2NpcGxpbmU9NiI+PC9hPjwvbGk+DQoJPGxpPjxhIGlkPSJsbmtfc3BvcnRzIiBocmVmPSJsb2NhdGVUdXRvci5hc3B4P0Rpc2NpcGxpbmU9NyI+PC9hPjwvbGk+DQo8L3VsPg0KPHA+R29vZCB3cml0ZXJzIGtub3cgdGhlcmUgaXMgYSBjb25zaWRlcmFibGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBhYmlsaXR5IHRvIHB1dCB3b3JkcyBvbiBhIHBhZ2UgYW5kIHRoZSBhYmlsaXR5IHRvIGV4cHJlc3MgeW91cnNlbGYgaW4gbHVjaWQsIGZsb3dpbmcgcGFyYWdyYXBocy4gIENvdW50bGVzcyBzdHVkZW50cyB0aGF0IGNhbiBkbyB0aGUgZm9ybWVyIHN0cnVnZ2xlIHdpdGggdGhlIGxhdHRlciwgYW5kIG9mdGVuIHByYWN0aWNlIGFsb25lIGNhbm5vdCBtYWtlIHRoZSBwcm9ibGVtIGdvIGF3YXkuICBRdWFsaWZpZWQgdHV0b3JzIHdobyBhcmUgZXhwZXJpZW5jZWQgaW4gYWRkcmVzc2luZyBzdWNoIHByb2JsZW1zIGNhbiBtYWtlIGEgY29uc2lkZXJhYmxlIGRpZmZlcmVuY2UuPC9wPjxkaXYgc3R5bGU9ImZsb2F0OnJpZ2h0O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2xpbmUtaGVpZ2h0OjIwcHg7bWFyZ2luOiAwcHggMHB4IDIwcHggMjBweDtwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAxMHB4O3RleHQtYWxpZ246IGNlbnRlcjt3aWR0aDoyMDBweDsiPjxhIHJlbD0ibm9mb2xsb3ciIG9ubW91c2VvdmVyPSJ3aW5kb3cuc3RhdHVzPScnO3JldHVybiB0cnVlOyIgb25tb3VzZW91dD0id2luZG93LnN0YXR1cz0nJztyZXR1cm4gdHJ1ZTsiIGhyZWY9ImxvY2F0ZVR1dG9yLmFzcHgiPkNsaWNrIEhlcmUgZm9yICBXcml0aW5nIFR1dG9ycyE8L2E+PC9kaXY+PHA+V3JpdGluZyBpcyBsaXR0bGUgbW9yZSB0aGFuIHRoZSBwcm9wZXIgb3JnYW5pemF0aW9uIG9mIHlvdXIgdGhvdWdodHMuICBNYW55IG9mIHRoZSBiZXN0IHR1dG9ycyBkZXNpZ24gZXhlcmNpc2VzIHdob3NlIHB1cnBvc2UgaXMgdG8gaGVscCB3aXRoIGdldHRpbmcgY29uY2VwdHMgaW4gdGhlIHByb3BlciBvcmRlciBhbmQgaW1wcm92aW5nIHRoZWlyIGV4ZWN1dGlvbi4gIFN0dWRlbnRzIHdobyBzdHJ1Z2dsZSB3aXRoIHN1Y2ggc2tpbGxzIG9mdGVuIGRvIHNvIGZvciBhIHZhcmlldHkgb2YgcmVhc29ucywgYW5kIGFuIGV4cGVydCBkaWFnbm9zaXMgY2FuIHNhdmUgeW91IGhvdXJzIG9mIGZydXN0cmF0aW9uLjwvcD48cD5UdXRvcnNUZWFjaC5jb20gd2FzIGRldmVsb3BlZCBhcyBhIGZyZWUgcmVzb3VyY2UgdG8gaGVscCBzdHVkZW50cyBjb25uZWN0IHdpdGggc3VwZXJpb3IgdHV0b3JzIGluIHRoZWlyIGFyZWFzLiAgTWFueSBzdWNoIHR1dG9ycyB3b3JrIHRocm91Z2ggdGVjaG5vbG9neSB0byBjcmVhdGUgb25saW5lIGxlc3NvbiBwbGFucywgZW1haWxzIGFuZCByZWFsLXRpbWUgY2hhdCB0dXRvcmlhbHMuICBXaGVuIHlvdSBmb3JlZ28gdGhvc2UgZXhwZW5zaXZlIGhvdXNlIHZpc2l0cywgeW91IGNhbiBsaXRlcmFsbHkgc2F2ZSBodW5kcmVkcyBvZiBkb2xsYXJzIG9uIHR1dG9yaW5nIGNvc3RzIG92ZXIgdGhlIGNvdXJzZSBvZiBhIHNjaG9vbCB5ZWFyITwvcD48cD5XaGF0ZXZlciB5b3VyIHdyaXRpbmcgbGV2ZWwsIHdlIGNhbiBoZWxwIGZpbmQgc29tZW9uZSB3aG9zZSBleHBlcnRpc2Ugc3VpdHMgeW91ciBuZWVkcy4gIFRoZSBzZWFyY2ggaXMgZnJlZSBmb3Igc3R1ZGVudHMgYW5kIG91ciB0dXRvcnMgcGF5IG9ubHkgYSBub21pbmFsIGZlZSB0byBnZXQgbGlzdGVkIGhlcmUsIHNvIHlvdSB3aWxsIG5ldmVyIGVuY291bnRlciBhbnkgdW5leHBlY3RlZCBmZWVzLiAgSWYgeW91IGFyZSB0aXJlZCBvZiB5b3VyIHBpZWNlcyBjb21pbmcgYmFjayBtYXJrZWQgdXAgd2l0aCByZWQgaW5rLCBhIHF1YWxpZmllZCB0dXRvciBtYXkgYmUgYSBncmVhdCBwbGFjZSB0byBzdGFydC48YnIgLz48L3A+DQo8cD48YSBocmVmPSJodHRwOi8vd3d3LmJiYm9ubGluZS5vcmcvY2tzLmFzcD9pZD0xMDUxMjE0MTExOTMzIiBvbmNsaWNrPSJ3aW5kb3cub3BlbignaHR0cDovL3d3dy5iYmJvbmxpbmUub3JnL2Nrcy5hc3A/aWQ9MTA1MTIxNDExMTkzMycsJ1JJQycsJ3dpZHRoPTYwMCxoZWlnaHQ9NDM4LHJlc2l6YWJsZT15ZXMsc2Nyb2xsYmFycz15ZXMsdG9vbGJhcj1ubyxtZW51YmFyPW5vLGxvY2F0aW9uPW5vLHN0YXR1cz1ubyxsZWZ0PTEwMCx0b3A9NDAsc2NyZWVuWD0xMDAsc2NyZWVuWT00MCcpO3JldHVybiBmYWxzZTsiPjxpbWcgc3JjPSJpbWFnZXMvQkJCU2VhbDMuZ2lmIiBhbHQ9IlRoZSBCZXR0ZXIgQnVzaW5lc3MgQnVyZWF1IFNlYWwiIHZzcGFjZT0iMTkiIGFsaWduPSJyaWdodCIgYm9yZGVyPSIwIi8+PC9hPjwvcD4NCjxwIGFsaWduPSJsZWZ0Ij48c3Ryb25nPlBhcmVudHMgYW5kIFN0dWRlbnRzOjwvc3Ryb25nPjwvcD4NCjxwIGFsaWduPSJsZWZ0Ij48YSBocmVmPSJsb2NhdGVUdXRvci5hc3B4Ij5DbGljayBoZXJlIHRvIEZpbmQgYSBUdXRvciBpbiB5b3VyIGFyZWEhPC9hPjxici8+RXZlcnkgcmVnaW9uLiBFdmVyeSBzdWJqZWN0LiBFdmVyeSBhY2FkZW1pYyBsZXZlbC4gQW5kIHRoZSBzZWFyY2ggZm9yIFR1dG9ycyBpcyBhbHdheXMgRlJFRSEgJm5ic3A7IDxhIGhyZWY9IkZsYXNoL3RvdXIuaHRtIiBvbmNsaWNrPSJ3aW5kb3cub3BlbignRmxhc2gvdG91ci5odG0nLCdSSUMnLCd3aWR0aD02MDAsaGVpZ2h0PTQzOCxyZXNpemFibGU9bm8sc2Nyb2xsYmFycz1ubyx0b29sYmFyPW5vLG1lbnViYXI9bm8sbG9jYXRpb249bm8sc3RhdHVzPW5vLGxlZnQ9MTAwLHRvcD00MCxzY3JlZW5YPTEwMCxzY3JlZW5ZPTQwJyk7cmV0dXJuIGZhbHNlOyI+Q2xpY2sgaGVyZSB0byBzZWUgYSBEZW1vPC9hPjxici8+PC9wPg0KPHAgYWxpZ249ImxlZnQiPjxzdHJvbmc+VHV0b3JzIGFuZCBFZHVjYXRvcnM6PC9zdHJvbmc+PC9wPg0KPHAgYWxpZ249ImxlZnQiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnR1dG9yc3RlYWNoLmNvbS9zaWduVXAuYXNweCI+Q2xpY2sgaGVyZSB0byBSZWdpc3RlciBhcyBhIFR1dG9yIT48L2E+PGJyLz5ObyBsb25nZXIgd2lsbCB5b3UsIHRoZSB0dXRvciwgbmVlZCB0byBmaW5kIG5ldyBzdHVkZW50cy4gTmV3IHN0dWRlbnRzIHdpbGwgZmluZCB5b3UuPGJyLz48YSBocmVmPSJmYXEuYXNweCI+PHNtYWxsPkxFQVJOIE1PUkUuLi48L3NtYWxsPjwvYT48L3A+DQpkAgcPZBYCAgEPDxYCHwAFBDIwMTBkZGR/VpP2kfOXZiQ6bnwjYk15PkTukw==";
$EVENTVALIDATION = "/wEWBALly9q5CQKMyrugBwKOhu66DgLz7ZDjD5DRTjhka66u5ECR4filq7BkSxxy";
curl_setopt ($ch, CURLOPT_POSTFIELDS, "left1_tbUser=myusername&left1_tbPassword=mypassword&__EVENTTARGET=".$EVENTTARGET."&__EVENTARGUMENT=".$EVENTARGUMENT."&__VIEWSTATE=".$VIEWSTATE."&__EVENTVALIDATION=".$EVENTVALIDATION);
// IMITATE CLASSIC BROWSER'S BEHAVIOUR : HANDLE COOKIES
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
# Setting CURLOPT_RETURNTRANSFER variable to 1 will force cURL
# not to print out the results of its query.
# Instead, it will return the results as a string return value
# from curl_exec() instead of the usual true/false.
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
// EXECUTE 1st REQUEST (FORM LOGIN)
$store = curl_exec ($ch);
//print $store;
// SET FILE TO DOWNLOAD
curl_setopt($ch, CURLOPT_URL, 'https://www.tutorsteach.com/inquiry.aspx');
// EXECUTE 2nd REQUEST (FILE DOWNLOAD)
$content = curl_exec ($ch);
// CLOSE CURL
curl_close ($ch);
print $content;
?>
Now this should display the page that comes after we are logged into the site and visit this page: https://www.tutorsteach.com/inquiry.aspx
But it is showing this error:
“Object Moved
This object may be found here.”
Can someone please help me? I am a novice in CURL.
thanks in advance.
FireFly