如何在javascript中包含link + id

时间:2012-11-06 13:45:10

标签: php javascript api

我基本上想要做什么,而我没有成功就是从链接中获取id

<input type="hidden" value="<?PHP echo $_GET['id']; ?>">

使用javascript变量检索id将其添加到api.php

    var id = $("#id").val();
    var firstname = $("#firstname").val();
    var name = $("#name").val();
    var state = $("#state").val();
    var dataString = 'firstname='+ firstname + '&name=' + name + '&state=' + state;

    if(firstname=='' || name=='' || state=='')
    {
        $('.success0').fadeOut(200).hide();
        $('.error').fadeOut(200).show();
    }else{
        $.ajax({
        type: "POST",
        url: "api.php+id",
        data: dataString,

在api.php获取id之后,但不幸的是它起作用了

exec('curl -b cookies -c cookies -X POST -d @file.json http://sand.api.xxx.com/item?id='. $_GET['id']);

2 个答案:

答案 0 :(得分:1)

 <input type="hidden" value="<?PHP echo $_GET['id']; ?>">

您的代码容易受到xss攻击

使用此

 <input type="hidden" id="myid" value="<?PHP echo htmlentities($_GET['id']); ?>">


var id=$("#myid").attr("value");

var id=$("#myid").val();

答案 1 :(得分:0)

我在你的代码中发现了一些错误:

你的HTML应该是这样的:

<input id="el_id" type="hidden" value="<?PHP echo $_GET['id']; ?>">

你的JS修复如下:

    var id = $("#el_id").val();
    var firstname = $("#firstname").val();
    var name = $("#name").val();
    var state = $("#state").val();
    var dataString = 'firstname='+ firstname + '&name=' + name + '&state=' + state;

    if(firstname=='' || name=='' || state=='')
    {
        $('.success0').fadeOut(200).hide();
        $('.error').fadeOut(200).show();
    }else{
        $.ajax({
        type: "POST",
        url: "api.php?id="+id,
        data: dataString,