如何查找用户创建按钮的值

Cha*_*920 0 php

起初我创建了按钮,因此我知道按钮的名称并且能够使用:

//function button clicked 
if (isset($_POST['thenameofthebutton'])) {

}
Run Code Online (Sandbox Code Playgroud)

我只需在我的函数"单击按钮"中的按钮代码中手动编写名称.

但是现在按钮是使用PHP和SQL从用户数据创建的.

我创建这样的按钮,它的工作正常:

$sql = "SELECT * FROM chooseCategory";
$result = mysqli_query($con,$sql)or die(mysqli_error());
while($row = mysqli_fetch_array($result)) {
    echo ' <input type="submit" name="'.$row['Name']
    .'" value="'.$row['Name']
    .'">
    </form>';
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何创建我的功能"单击按钮",因此它可以动态地使用从用户输入创建的按钮而不是我在代码中手动创建它们.

sal*_*ore 5

如果您创建多个提交输入,则只有实际单击的输入与表单一起提交,其他输入将被忽略,即使它们具有值.因此,您可以创建多个具有相同名称的提交按钮,并仅更改其值,如下所示.

while($row = mysqli_fetch_array($result)) {
    echo ' <input type="submit" name="submitted-btn" value="'.$row['Name'].'">';
}
Run Code Online (Sandbox Code Playgroud)

提交表单时,$_POST['submitted-btn']将包含$row['name']单击的按钮.因此,在您的页面中,您可以if(isset($_POST['submitted-btn']))检查表单是否正在提交并用于$_POST['submitted-btn']获取单击的按钮.

请注意,生成的HTML $_POST在提交给服务器时会产生很大的不同,因此如果依赖于给定的结构,您可能需要更改代码.