猿问

PHP 中如何通过 POST 发送值到其他页面而不需要输入标签

如何在 PHP 中不使用输入标签通过 POST 向另一个页面发送值?我尝试了这种方法,但也没有成功。

<?php

include("database/config.php");

include("database/opendb.php");

include("functions.php");



if (isset($_POST["totalHobbies"])) {

    $par = $_POST["totalHobbies"];

}


$query = "SELECT firstname, lastname, hobbies, id ";

$query .= "FROM persons ";

$query .= "WHERE hobbies = ? ";


$preparendquery = $dbaselink->prepare($query);

$preparendquery->bind_param("i", $par);

$preparendquery->execute();

if ($preparendquery->errno) {

    echo "Fout bij uitvoeren commando". "<br>";

} else {

    $result = $preparendquery->get_result();

    if ($result->num_rows === 0) {

        echo "Geen rijen gevoenden" . "<br>" ;

    } else {

        while ($row = $result->fetch_assoc()) {    // here is the problem

            echo "<form action=\"details.php\" method='POST' >";    //refer to details.php page

            $id = $row["id"];

            echo "<a href=\"details.php?id= " . $row['id'] . " \">" . fullname($row['firstname'], $row['lastname']). "</a>". "<br>";

            echo "<input type=\"hidden\" name = \"id\" value= '$id'> </input>";

            echo "</form>";

        };

    }

}

$preparendquery->close();


echo"<br><button onclick=\"location.href='index.html'\">Back</button>";

include("database/closedb.php");

?>


慕森王
浏览 102回答 3
3回答

繁星淼淼

您无法发送带有“a href”的表单。您可以使用按钮或输入按钮并将其样式设置为看起来像常规链接(正确的解决方案)。或者您可以使用 Javascript 来处理链接点击并从 javascript 发送表单(不好的解决方法,但也是可行的)。另外,如果你想获取信息,你应该使用 GET 方法,这也可以解决你的问题。

HUWWW

您可以将其id作为会话变量,然后在details.php页面中调用它。

拉风的咖菲猫

我仍然没有正确理解你的问题。删除<a>标签您的输入标签书写不正确。它应该是echo&nbsp;"<input&nbsp;type=\"hidden\"&nbsp;name&nbsp;=&nbsp;\"id\"&nbsp;value=&nbsp;'$id'/>";
随时随地看视频慕课网APP

相关分类

Html5
我要回答