【问题标题】:Create Php page that redirects to another page transmitting some content创建重定向到传输某些内容的另一个页面的 PHP 页面
【发布时间】:2011-08-08 08:06:22
【问题描述】:

我是 PHP 的初学者,我想执行以下操作,但我不知道如何执行此操作:

我有一个网页,我要求用户提交他的邮政编码。在他/她提交之后,页面重定向到另一个 PHP 页面,我在数据库中搜索与邮政编码对应的城市。然后我写:“你所在的城市是……”。 我想要的是只使用一个网页(用户没有可见的重定向)来实现这一点。我知道我们可以使用 header 重定向到第一页,但我不知道如何传输内容(城市)。

【问题讨论】:

    标签: php redirect webpage


    【解决方案1】:

    您可以在查询参数中传递城市名称,如

    headers('Location: serachdatabase.php?city='.$cityname);
    

    但这可能不是您想要的。您可以考虑使用 Ajax 来执行此操作。使用 Ajax 页面不会完全刷新,只能刷新页面的一部分。 Ajax,如果你不知道的话,它被广泛使用。

    【讨论】:

      【解决方案2】:

      听起来您正在寻找 AJAX 帖子。对于初学者来说,这听起来像是一个高级主题,但是如果您查看 jQuery 之类的框架 (http://api.jquery.com/jQuery.post/),您会发现它非常简单。

      试试这样的:

      $('#myform').submit(function() {
         var url = 'databasequery.php';
         var postcode = $('#postcode').val();
         $.post( url, { postcode: postcode },
            function( data ) {          
                $( "#result" ).empty().append( data );
            }
          );
        return false;
      });
      

      在您的 HTML 中,您可以将表单标记为 myform,并创建一个 ID 为“result”的空 div。

      您的“databasequery.php”文件应该接受一个名为 postcode 的 POST 变量,并简单地输出您希望在页面上显示的响应。

      【讨论】:

        【解决方案3】:

        您可以使用 header("Location:..."); 进行重定向;

        或者你可以简单地发布一个表格

         <form method="post" action="yourURL">
             Postal code <input type='text' name='postal_code' /> <br/>
             <input type="submit" value="submit form" name="submit" />
         </form>
        

        然后在php中做这样的事情:

             <?php
                $postal = $_POST["postal_code"];
        
              // match against databse..
             ?>
        

        请注意,将此代码放入 mysql 查询中并不“安全”!

        【讨论】:

        • 这意味着页面重新加载,并且重定向到用户可见。
        【解决方案4】:

        如果您不希望任何页面重定向,则需要使用 iFrame 或一些 CSS-id 的 div 将您的内容加载到使用 javascript 的 XMLHttpRequest 或 jQuery 的 axaj 或类似的从另一个 PHP 页面加载信息并将其插入到当前文档中。

        Here 是 XmlHttpRequest 的一个示例使用,Here 是 jQuery 的 ajax 方法的 API 文档。

        【讨论】:

          【解决方案5】:

          解决问题的关键是 GET 和 POST 参数。了解 HTML 表单。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-04-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多