使用超链接设置php get set变量

时间:2017-04-17 19:12:41

标签: php

我有两个.php页面,一个返回一个表的内容,包括每个条目的id以及一个html文本输入,另一个检索详细信息并允许我更新记录。

我希望通过使用href单击列表项来存储条目的id,而不是通过文本输入id并提交。

choose.php

echo "<ul>";                    
while ($row=mysql_fetch_array($result)) {
    $reference=$row[reference];
    $name=$row[name];
    echo "<li>$reference, $name</li>";  
}
echo "</ul>";    


session_start();

$_SESSION['regName'] = $reference;
mysql_close($link);
?>

<form method="get" action="update.php">
    <input type="text" name="regName" value="">
    <input type="submit">
</form>

update.php

session_start();

$reference = $_GET['regName'];

echo "Your selection id is: ".$reference.".";
$query="SELECT * FROM firsttable WHERE reference='$reference'";
$result=mysql_query($query) or die("Query to get data from firsttable failed with this error: ".mysql_error());
$row=mysql_fetch_array($result);

$name=$row[name];

echo "<form method=\"POST\" action=\"updated.php\">";
    echo "<p>";
        echo "<label for=\"name\">Name: </label><input type=\"text\" id=\"name\" name=\"name\" size=\"30\" value=\"$name\"/>";

    echo "<p><input type=\"submit\"></p>";
echo "</form>";

我很抱歉,如果这看起来非常明显,我今天才开始学习PHP,而且它比我迄今为止所做的任何事情都复杂得多。

由于 詹姆斯

1 个答案:

答案 0 :(得分:0)

回答你的问题,你只需要使用A标签的HREF参数。这将创建一个活动链接,其中包含您需要的引用:

echo '<ul>';                    
while ($row = mysql_fetch_array($result)) {
    $reference = $row[reference];
    $name = $row[name];
    echo '<li><a href=/update.php?regName='.$reference.'>'.$name.'</a></li>';  
}
echo '</ul>';    
?>

请阅读此处,了解有关通过GET \ POST传递数据的更多详细信息:https://www.w3schools.com/tags/ref_httpmethods.asp

正如您在上面所说的那样,请考虑重新编写代码,因为它完全不安全,除了一些非常基本的概念证明之外不能使用。并且仅在内部网或本地机器内 祝你好运!