仅使用提交按钮在db中保存值

时间:2014-08-11 15:31:07

标签: php sql

我正在尝试将一些值保存到db中,在第一页上我正在运行一些匹配,在第二页上我需要保存值。在第一页上,只有点击按钮会显示给用户,当他点击时,会存储这些值。

<form action="ms_insert.php" method="post">
<input type="submit" value="Claim your daily bonus" name="test">
</form>

如何提交表单之外的所有值并将它们发送到ms_insert.php并处理值。

我需要做到这一点。

某些值必须匹配,在成功匹配时,它会将enteries保存到db。

以下是我现在使用的确切代码:

<?php
if ( $thismemberinfo[msurf] >= $msurfclicks ) {
$sql=$Db1->query("INSERT INTO d_bonus VALUES('$userid','0.02',NOW())"); 
echo "success";
}
else
{
echo "wrong";
}
?>
<form action="" method="post">
<input type="hidden" value="123" name="match">
<input type="submit" value="Claim your daily bonus $o.o2" name="claim">
</form>

我想在用户点击提交按钮时执行此PHP代码。

2 个答案:

答案 0 :(得分:0)

我可以通过两种方式来考虑这样做:

  • 只需将post变量设置为here所述的另一个值:

    $_POST['text'] = 'another value';
    

    这将覆盖与数组的文本键对应的先前值。 $ _POST是超全局关联数组,您可以像普通的php数组一样更改值。

  • 第二种方法是使用this帖子中描述的_SESSION标记:

    在first.php中:

    $_SESSION['favcolor'] = 'green';
    

    在ms_insert.php中:

    echo $_SESSION['favcolor']; // green
    

P.S。您也可以使用cookies

其他来源:

答案 1 :(得分:-1)

例如,您可以将Javascript与XHR对象一起使用,或尝试插入您的值以存储在隐藏的输入中。

解决方案1:AJAX,例如:

你的JS(这里有Jquery):

function saveInDb(){

    /* Retrieve your values in your page : */
    var myValue1 = $('#value1Id').val();
    var myValue2 = $('#value2Id').val();

    /*Create a Jquery ajax object : */
    $.ajax({
      type: "POST",
      url: "ms_insert.php",
      data: { "value1": myValue1, "value2": myValue2 }
    }).done(function( msg ) {
        alert( "Data Saved");
    });
}

您的HTML:

<span id="value1Id">My value 1</span>
<span id="value2Id">My value 2</span>
<button onclick=saveInDb()></button>

解决方案2:隐藏输入的HTML:

<form action="ms_insert.php" method="post">
   <input type="hidden" value="My value 1" name="value1">
   <input type="hidden" value="My value 2" name="value2">
   <input type="submit" value="Claim your daily bonus" name="test">
</form>