2012-04-03 107 views
0

一切都很好in my previous help request thread。我在正确的轨道上解决CSRF,但需要指出正确的方向。我得到了很大的帮助,甚至还有一个用于登录Google Android Market的备用脚本。我的脚本和我修改的与我的表格相匹配的脚本都挂在同一点。显然cURL不能处理JS,有没有什么办法可以解决使用submitForm()提交的表单而不改变表单?cURL和Javascript可能的解决方法?

下面是SubmitForm功能

function submitForm(formObj, formMode) { 
    if (!formObj) 
     return false; 
    if (formObj.tagName != "FORM") { 
     if (!formObj.form) 
      return false; 
     formObj = formObj.form; 
    } 
    if (formObj.mode) 
     formObj.mode.value = formMode; 
    formObj.submit(); 
} 

这里的代码提交按钮的代码 -

<a class="VertMenuItems" href="javascript: document.authform.submit();">Submit</a> 

Here is a link to my last question in case more background information is needed.

+1

将数据从javascript提交到PHP就足够了吗?如果是这样,我可以提供一些伪代码来使用Javascript将信息传递给PHP服务。 – 2012-04-03 22:01:09

+0

@ syn4k谢谢你回复我,我相信这可能会奏效,你能告诉我你将如何去做这件事吗? – Eric 2012-04-04 15:42:43

回答

1

PHP服务...

<?php 
// PHP service file 

// Get all data coming in via GET or POST 
$vars = $_GET + $_POST; 

// Do something with the data coming in 
?> 

其他地方的Javascript ...

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     function sendData(data) 
     { 
      var response; 
      $.ajax({ 
       url: 'phpservice.php', 
       data: data, 
       type: 'POST', 
       dataType: 'json', 
       async: false, 
       success: function(response_from_service) 
       { 
        response = response_from_service; 
       }, 
       error: function() 
       { 
       } 
      }); 
      return response; 
     }; 
     function getData(data) 
     { 
      var response; 
      $.ajax({ 
       url: 'phpservice.php', 
       data: data, 
       type: 'GET', 
       dataType: 'json', 
       async: false, 
       success: function(response_from_service) 
       { 
        response = response_from_service; 
       }, 
       error: function() 
       { 
       } 
      }); 
      return response; 
     }; 
    }); 
</script> 
+0

非常好,非常感谢你的帮助。我唯一的问题是我把它放在哪里?我会假设我正在使用登录的页面,但是可以简单地将它放在运行cURL的文件中?再次感谢你的帮助! – Eric 2012-04-05 15:01:31

+1

不客气!您可能会将PHP代码合并到您的cURL脚本中,因为它们都是PHP,但我的建议会违反这一规定。主要是为了避免混淆。我怀疑这确实是一个偏好问题。 JavaScript应该进入表单所在的页面。我会建议在该文档的头部创建一个新的JavaScript包含,以便以后不会有任何混乱。 – 2012-04-05 18:49:51

+0

Awesome Syn。非常感谢你为我提供了巨大的帮助。我永远不会写出你提供给我的脚本。 – Eric 2012-04-05 19:11:19