gpt4 book ai didi

php - 链接的 isset - PHP

转载 作者:行者123 更新时间:2023-11-29 06:10:55 26 4
gpt4 key购买 nike

我正在尝试创建一个链接供用户单击,该链接会将他们从列表中删除。我正在尝试找出如何在不使用提交按钮且不使用 $_GET(如果可能的话)的情况下执行此操作。

无论如何,我害怕用 $_GET 来做到这一点(我现在的方式),因为用户可以在 URL 中键入它(即使 99% 的人不知道如何或不知道如何做到这一点)并且他们将从列表中删除。

如何命名链接以便可以使用 $_POST?

$attendingUsers = mysql_query("Select acceptedInvites from events where eventID = ".mysql_real_escape_string($_GET['eventID'])." ");
$users= mysql_fetch_array($attendingUsers);
$user = $users['acceptedInvites'];
if(preg_match("/$userid/", $user)){
echo "You are attending this event</br>";
echo '<a href="viewevent.php?eventID='.$_GET['eventID'].'&delete=1">Click here </a>to remove yourself from the list';
if($_GET['delete']=1){
$sql=...
}
}

不使用 $_GET 是否可以做到这一点?谢谢!

最佳答案

切勿通过链接删除。阅读 The Spider of Doom

最好的方法是链接到带有“您确定吗”表单的“删除”页面。提交表单(通过 POST)执行删除并重定向回合适的结果页面。

例如

<a href="remove.php?eventID=<?php echo $eventId ?>">Click here</a>
to remove yourself from the list

然后,在remove.php

<?php
// get Event details via $_GET['eventID']

if (isset($_POST['confirm'])) {
// delete via SQL

// redirect
header('Location: http://example.com/events.php');
exit;
}

// display event details
?>

<form method="post" action="remove.php?eventID=<?php echo $eventId ?>">
<p>Are you sure?</p>
<input type="submit" name="confirm" value="Remove me from this event">
</form>

您可能还应该研究 CSRF 保护,但这确实超出了这个问题的范围。

关于php - 链接的 isset - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9222322/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com