而不发送到服务器回声表单数据

问题描述 投票:0回答:3

我有一个页面,我要求的用户名上一个微小的形式,形式将数据发送到name.php和回显在的用户名,例如“你好史蒂芬说:”史蒂芬是名称输入到表格。

现在,这个名字一直回荡这种形式,我想重复相同的数据可能在其他地方在页面上。这是我一直碰壁。

我宁愿不发进入表单服务器或数据库的名称,而只是让他们的会话,然后失去他们。

现在的问题是表单数据多次回荡在一个页面上。

我使用的是现在的微小形式的代码如下:

<form role="form" id="inviteform3" class="form-inline" action="name.php" method="POST">
<div class="form-group">
<input type="text" class="form-control input-sm" name="name" placeholder="Your Name" 
id="hello" autocomplete="off" style="margin-top:10px">
                            </div>
                            <center>
                            <span id="result"></span>
                            <button class="btn btn-brand btn-sm next-screen animated bounceInUp" 
id="go" style="margin-top:5px; display:none" href="#services" data-animation-delay=".5s">  
Let's Go!</button></center>

<button class="btn btn-block btn-brand btn-xs invitebtn3" id="casi" type="submit" 
style="margin-top:5px"><i class="fa fa-thumbs-o-up"></i> Submit</button>

</form>

我的PHP形式(name.php)如下:

<html>
<body>

Let's get started, <?php echo $_POST["name"]; ?>

</body>

</html>

我的JS代码如下:

<script>

$(document).on("ready", function(){
//Form action
$("#inviteform3").on("submit", function(event){
// Stop submit event
event.preventDefault();
$.ajax({
    type:'POST', 
    url: 'name.php',
    data:$('#inviteform3').serialize(), 
    success: function(response)  
    {
        $('#inviteform3').find('#result').html(response);
    }});
});
});

</script>
php html5 forms echo
3个回答
0
投票

我们需要得到一些东西直:

我宁愿不发进入表单服务器或数据库的名称,而只是让他们的会话,然后失去他们。

您要发送数据到服务器,您使用jQuery和AJAX来POST您的形式name.php(PHP可以在服务器上)从中接收响应,并用线将其添加您的页面:

$('#inviteform3').find('#result').html(response);

如果您想保留存储(例如,在一个会话)的数据,你可以使用name.php由安东尼D'安德烈建议的PHP。当浏览器关闭时,会话被销毁。到那时,你可以使用任何你想去的地方会话变量。

现在,这个名字一直回荡这种形式,我想重复相同的数据可能在其他地方在页面上。这是我一直碰壁。

您在echo name.phping的名字,你的AJAX调用然后检索整个页面(包括htmlbody标签),并增加它#result。如果你想显示的名称多张次,只是多次与上面的线追加它。


0
投票
$("#inviteform3").on("submit", function(event) {
    var name = $("form input['name']").val();

     // Here is the interesting part
     sessionStorage.setItem("name", name);
}

// Get that name
var access_name = sessionStorage.getItem("name");

$("#some_id").html(access_name); // Inserts the name where you want it.

sessionStorage的擦拭每一个标签/窗口关闭的时间。


0
投票

你可以使用PHP而非JavaScript。

session_start();
$_SESSION['name'] = $_POST['name'];

当浏览器关闭时可变$_SESSION被清除,是全球等都可以在任何地方进行访问。 session_start必须是你所运行的第一页第1行,虽然做的第一件事。

关于PHP会议更多信息,可以发现here和大约$_SESSION here

例如:

您要发布帖子name.php。因此,1号线的name.php做

  <?php session_start(); ?>

然后做

<?php
     if (isset($_POST['name'])) {
        $_SESSION['name'] = $_POST['name'];
     }
?>

那么无论你想使用它,只是做echo $_SESSION['name'];

如果你想在其他文件呼应。然后在其他文件中的第1行做

 <?php session_start(); ?>

然后:

<?php
     if (isset($_SESSION['name'])) {
        echo $_SESSION['name'];
     }
?>

if语句只是在那里检查,但你并不需要它,如果你有信心它设置。

© www.soinside.com 2019 - 2024. All rights reserved.