有没有办法使用按钮(html / php)将php变量传递到另一个页面?

时间:2012-02-17 03:20:25

标签: php html

例如,假设您有一个循环,每次循环时都会产生一个按钮。因此,如果循环运行五次,则会有5个按钮。现在说我有一个像$ num这样的变量,每次循环循环都会改变。是否有一种方法可以让每个按钮在单击按钮时传递其各自的$ num?

$num = 0;
while(...){
    //want this to send $num via POST or GET to xyz.php
    echo '<button type="submit" value="3" name="editId">Remove</button>';
    $num++;//$num changes every instance of the loop
}

4 个答案:

答案 0 :(得分:4)

最简单的方法是围绕每个<form>代码创建<button>

$num = 0;
while(...){
    //want this to send $num via POST or GET to xyz.php
    echo '<form method="post" action="xyz.php">';
    // Pass $num into the form value
    echo '<button type="submit" value="' . $num. '" name="editId">Remove</button>';
    echo '</form>'
    $num++;
}

点击的广告将xyz.php传递给$_POST['editId']

虽然此方法为每个按钮创建了不同的表单,但还有其他方法可以使用JavaScript,它使用单个表单并根据单击的按钮将值分配给隐藏的输入。如果只发送一个输入值,那么多个<form> s选项可能最容易编码。

答案 1 :(得分:1)

按钮的名称&amp;价值应与表格一起提交。

例如:

<?php print_r($_POST); ?>

<form action="" method="post">
    <button type="submit" name="button" value="value">Button</button>
</form>

单击“按钮”按钮时,将提交表单并

Array ( [button] => value ) 

将在表格上方输出。

将此应用于您的情况,可以使用以下内容:

$num = 0;
while(...){
    // Set $num as the value of each button
    echo "<button type='submit' value='{$num}' name='editId'>Remove</button>";
    $num++;//$num changes every instance of the loop
}

答案 2 :(得分:0)

你快到了:

$num = 0; while(...){     //want this to send $num via POST or GET to xyz.php  
echo '<button type="submit" value="'.$num.'" name="editId">Remove</button>';     
$num++;//$num changes every instance of the loop 
} 

答案 3 :(得分:0)

你非常接近。只需将$num插入按钮的value属性即可。

$num = 0;
while(...){
    //want this to send $num via POST or GET to xyz.php
    echo '<button type="submit" value="'.$num.'" name="editId">Remove</button>';
    $num++;//$num changes every instance of the loop
}

当您在<form>代码中包含此代码块时,点击[ Remove ]按钮会将$num的值发送到:$_POST['editId']