添加连续数字属性与PHP或JavaScript


Add Consecutive Numbers to Attribute with PHP or JavaScript

我的文件中有以下部分代码:

<?php
$output = "<font id=''>" . $_POST["input"] . "</font>";
file_put_contents("output.html", $output, FILE_APPEND);
?>

用户可以多次提交表单,每次在输入字段中输入的值都将保存到一个文件中。我想做的是,无论是用PHP还是JavaScript,在id属性中为每个提交的值添加连续的数字。

示例:用户输入hello,提交表单。只有<font id=''>hello</font>会被写入文件。我要做的是在提交的第一个值(<font id='1'>hello</font>)的id属性中写入1。对于第二个值,写入2,对于第三个值写入3,以此类推。

这是可能的吗?如果有,怎么做?

谢谢。

很难统计提交次数,因为当你提交时,javascript中的变量将失去计数器,php也是如此。

我的想法是使用AJAX来提交,Javascript中有一个计数器,从1开始。当提交时,增加这个计数器,并像传递其他隐藏的输入一样传递这个计数器。

总之,我有一个有两个输入的表单,一个是您拥有的,另一个是隐藏的,其中包含提交计数器。您使用ajax完成提交,页面不会重新加载。因此,您可以像其他$_POST['counter']一样在文件中添加计数器。

根据您是需要记住所有用户的号码,还是只需要记住一个用户的号码,您可以使用PHP会话。

你需要在脚本的开头运行session_start,但在此之后,$_SESSION中的变量将一直存在,直到用户的浏览器会话结束(在php.ini中可配置)。

<?php
    session_start();
    if(!isset($_SESSION['post_counter']) {
        $_SESSION['post_counter'] = 0;
    }
    $_SESSION['post_counter']++;
    $output = "<font id='" + $_SESSION['post_counter'] + "'>" . $_POST["input"] . "</font>";
    file_put_contents("output.html", $output, FILE_APPEND);
?>