如何保存表格中的信息?

时间:2013-05-21 03:52:53

标签: php javascript jquery html css

以下是我在jsfiddle中的代码:http://jsfiddle.net/MppxX/

如果您通过点击DIV标签内左侧的第一个“是”或第一个图像找到了解决方法,您将会看到我正在谈论的表单。

现在,在用户输入信息后(我将在稍后提供“提交”按钮),我该如何“保存”该信息?我将需要这些信息用于两个目的:

1)用所述信息创建提醒

2)将为“提醒列表”创建一个单独的区域,并显示已保存的提醒

感谢

$(document).ready(function() {
                            $(".appIMG1").click(function() {
                                $("#app1").animate({
                                    left: '250px',
                                    opacity: 0
                                });
                                $("#app2").fadeIn("slow");
                            });
                        });
    
        $(document).ready(function() {
                            $(".appIMG2").one('click.appIMG2', function() {
                                $('.appIMG1, .appIMG2').unbind('click');
                                $('#app1').animate({
                                    top: "0px",
                                    opacity: 0
                                });
                                $("#app3").fadeIn("slow");
                            });
                        });
#app1{
                            position:absolute;
                            width:250px;
                            height:250px;
                            z-index:1;
                            top:50%;
                            left:50%;
                            margin:-150px 0 0 -150px;
                            background:white;
                            box-shadow: 0 0 1px 1px #888888;
                            text-align:center
                        }
            
                        #app2{
                            position:absolute;
                            width:300px;
                            height:300px;
                            z-index:0;
                            top:50%;
                            left:50%;
                            margin:-150px 0 0 -150px;
                            background:white;
                            box-shadow: 0 0 1px 1px #888888;
                            text-align:center;
                        }
            
                        #app3{
                            position:absolute;
                            width:300px;
                            height:250px;
                            z-index:8;
                            top:50%;
                            left:50%;
                            margin:-150px 0 0 -150px;
                            background:white;
                            box-shadow: 0 0 1px 1px #888888;
                            text-align:center;
                        }
            
                        img.appIMG1{
                            -webkit-box-shadow: 0 0 1px 1px #888888;
                            box-shadow:0 0 1px 1px #888888;
                        }
            
                        img.appIMG2{
                            -webkit-box-shadow: 0 0 1px 1px #888888;
                            box-shadow:0 0 1px 1px #888888;
                        }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <div id="app1">
                <p><b><u><font face="TimeBurner" color="#66d9ff" size="6">Do you want to make a reminder?</b></u></font></p>
                <br>
                <img class="appIMG1" border="0" src="YES.png" align="left" hspace=1.8%>
                <img class="appIMG2" border="0" src="NO.png" align="right" hspace=2%>
            </div>
    
            <div id="app2" style="display:none">
                <form>
                    Name for the reminder: <input type="text" name="firstname"><br>
                    On what days would you like to be reminded on: <br>
                    <input type="checkbox" name="day" value="Monday">Monday<br>
                    <input type="checkbox" name="day" value="Tuesday">Tuesday<br>
                    <input type="checkbox" name="day" value="Wednesday">Wednesday<br>
                    <input type="checkbox" name="day" value="Thursday">Thursday<br>
                    <input type="checkbox" name="day" value="Friday">Friday<br>
                    <input type="checkbox" name="day" value="Saturday">Saturday<br>
                    <input type="checkbox" name="day" value="Sunday">Sunday<br>
                </form>
            </div>
    
            <div id="app3" style="display:none">
                <p><b><u><font face="TimeBurner" color="66d9ff" size="6">Do you want to check your current reminders?</b></u></font></p>
                <img class="appIMG1" alt="YES" border="0" src="YES.png" align="left" hspace=1.8%>
                <img class="appIMG2" alt="NO" border="0" src="NO.png" align="right" hspace=2%>
            </div>
    

2 个答案:

答案 0 :(得分:1)

为了保存从php表单输入的信息你真的有两个选择。这些选项将具体取决于您需要如何处理这些信息。

第一组“简单”选项由php session variables

组成
$_SESSION['...']

虽然会话变量存储在服务器上,但它们仅特定于一个 用户通常在一次访问中,这些变量将丢失 他们的信息,因为网站上的用户“会话”过期,或者当您使用PHP脚本关闭它时

<?php
     setcookie("user", "Alex Porter", time()+3600);
?>

another option is browser cookies ,可以使用php或javascript定义。他们的信息存储在用户浏览器的本地。它们可以配置更长的自定义到期时间,但您也有可能会让用户清除它们或不允许它们并中断您的预期流程。

前两个选项中的每一个都应该提到,因为“SITE OWNER”最初无法访问此信息而不进行任何进一步的自定义脚本


前面提到的第三个选项是将此信息存储到数据库中。 the typical and to my knowledge most commonly used and most widely documented database system is MYSQL. php具有非常好的预构建功能,允许脚本连接到Web数据库,以便从其中插入更新SELECT和DELETE数据。

应该注意的是,mysql将需要额外的知识和其他系统。使用mysql将需要访问mysql服务器 - 提供PHP的MOST托管解决方案从业界称之为“LAMP”堆栈运行。 LAMP代表Linux Apache MySQL PHP - 一种非常常见的Web服务器配置。

此外,一旦您可以访问mysql服务器 - 您还将为数据库构建架构以存储此信息。这意味着你定义了一个接受你的信息的数据库的“表”结构 - 一个非常常见的工具是PHPMYADMIN,并且经常在大多数网络托管公司(如GoDaddy)提供的LAMP托管解决方案中找到。

这一切都说 - 关系数据库解决方案是持久的意味着它们将无限期地存储数据(直到你决定删除它或者很少发生的中断)

典型的过程是用户提交表单,该表单包含php脚本的操作

<form action="handler.php" method="POST">
<!-- some form inputs and submits go here -->
</form>

此handler.php脚本将处理输入数据 - 然后连接到数据库服务器并执行所需的操作。是否为用户注册或搜索数据库中的信息的INPUT数据,并通过SELECT命令输出结果。

如果你想在youtube上没有必备知识i recommend starting here at this very thorough, very free tutorial series.的MYSQL路线。在这里,Bucky经历了所有这些过程,包括获取一个免费的mysql服务器,这将极大地帮助学习过程,但可能不适合实时应用程序/开发。

抱歉写一本书,希望这有帮助!

答案 1 :(得分:0)

您可以将其保存到csv文件中,如果您不想使用MySQL并希望数据是本地的,您可以下载并咨询本地系统。

将所有POST值与逗号放在一起,并将它们附加到文件中。使

$_POST['firstname'] . ',' . $_POST['day'] . ','; 

并将其附加到文件,例如mydata.csv,然后您可以下载。

您还可以阅读&#34;爆炸&#34; (参见php.net)将文件的每一行放入一个数组并进行处理以设置提醒。

根据其他评论,教程非常有价值 - 特别是关于消毒文本输入,这对于防止注入攻击至关重要。