如何获取表单提交的URL

时间:2014-10-22 10:11:50

标签: php forms get submit edit

我刚刚创建了一个表单,我在提交时遇到了问题。

示例:

这里我有edit.php的链接,我可以通过此链接获取所有信息。

的index.php

<a href="change/info/edit.php?url= '
. $row['url'] 
.'&title='. $row['title'] 
.'&info='. $row['info']   
.'&name='. $row['name']  
.'&date='. $row['date'] .' " target="_blank">Edit</a>

这里我从index.php获取所有信息,如下所示:

edit.php:

<?php echo $_GET["title"]; ?>
<?php echo $_GET["info"]; ?>
<?php echo $_GET["date"]; ?>
<?php echo $_GET["name"]; ?>
<?php echo $_GET["url"]; ?>

编辑: Ares Draguna

<?php session_start();

if(isset($_POST['Submit'])){
    // code for check server side validation
    if(empty($_SESSION['captcha_code'] ) || strcasecmp($_SESSION['captcha_code'], $_POST['captcha_code']) != 0){ 


        $msg='<span class="fail">Please try again.</span>';// Captcha verification is incorrect.        

    }else{// Captcha verification is Correct. Final Code Execute here!

}
}

但是当我点击提交按钮并且验证码为false时页面刷新并且我丢失了所有信息,我必须在浏览器中回来再次查看所有信息。

那么当我点击提交按钮并且验证码为假时,我需要保留信息。

提前致谢!

1 个答案:

答案 0 :(得分:1)

要保留表单上的信息,您可以设置一些会话变量,如:

$_SESSION['title'] = $_GET["title"];
$_SESSION['info'] = $_GET["info"]; 等等......并测试它:

if(capcha == false) {
   //do something
} else {
   //unset the session variables
}

在这种情况下,如果capcha为false,那么您可以使用会话中的内容重新填充表单输入,因此即使重新加载页面后,您仍然可以存储这些信息。如果capcha为true,则记得取消设置会话变量。

但是,如果完全相同的页面刷新,则表示您拥有$ _GET中的值,因此您可以毫无问题地使用它。这实际上取决于代码的结构。

L.E:

if(isset($_POST['Submit'])){
    $_SESSION['captcha_code'] = $_GET['captcha_code'];
    $_SESSION['other_info'] = $_GET['other_info'];
    // code for check server side validation
    if(empty($_SESSION['captcha_code'] ) || strcasecmp($_SESSION['captcha_code'], $_POST['captcha_code']) != 0){ 
        $msg='<span class="fail">Please try again.</span>';// Captcha verification is incorrect.        
    }else{
       // Captcha verification is Correct. Final Code Execute here!
    }
}

在视图文件中,检查会话变量,如果isset submit post,则会设置会话变量。

希望它有所帮助!
继续编码!
顷。