我有一个问题...我创建了一个重定向循环,但我不知道如何修复它或以其他方式执行它。我有一个registration.php,其中有一个表单,它将post-data 发送到validation.php,用于验证并将数据发送到数据库中。到目前为止,一切都很好。但是,如果来自 from 的数据无效,我不能留在registration.php 上并显示错误消息。
所以我看到了一个教程,那个人在他的registration.php中使用了类似的东西。如果验证中出现问题,他会重定向到数据来自的同一页面,在这种情况下,它将从我的 validation.php 回到我的registration.php
header("Location: registration.php?error=".$err_msg);
exit();
为了获取 $err_msg 的值并将其显示在registration.php 上,他将registration.php 中的值从$_GET['error'] 中取出。如果我这样做,我会得到一个重定向循环。没有循环,他是如何做到的。这是我在registration.php中的表格。
registration.php
<?php
if(!empty($_GET['error'])){
$err_msg= $_GET['error'];
echo '<p class="error_msg">'.$err_msg. '</p>';
}
?>
<form id="main-contact-form" class="contact-form" name="contact-form" method="post" action="validation.php">
<div class="col-sm-5 col-sm-offset-1">
<div class="form-group col-md-14">
<label for="inputState">Geschlecht *</label>
<select id="inputState" name="gender" class="form-control" required="required">
<option selected>Bitte Wählen...</option>
<option value="frau">Frau</option>
<option value="herr">Herr</option>
</select>
</div>
<div class="form-group">
<label>Vorname *</label>
<input type="text" name="firstname" class="form-control" required="required">
</div>
我现在处于重定向循环中,并在 chrome 中收到 ERR_TOO_MANY_REDIRECTS 错误。我的错误是什么,他是如何做到这一点而不陷入循环的?
我只想回到registration.php 来显示一个err_msg。
或者有没有办法验证registration.php中的表单数据,并在验证后将它们发送到validation.php以将数据插入数据库。我不想从 registratio.php 中插入它们
守着星空守着你
郎朗坤