Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php F写入操作不正确,写入重复信息_Php_Fopen_Fwrite - Fatal编程技术网

Php F写入操作不正确,写入重复信息

Php F写入操作不正确,写入重复信息,php,fopen,fwrite,Php,Fopen,Fwrite,我是PHP的初学者,我对fwrite函数有一些问题。 我需要将信息写在一行中,在经常使用表单的用户使用表单后,表单的信息转到另一行 例如: 用户1: 形式 姓名:约翰 电邮:john@gmail.com 用户2: 形式 姓名:邦妮 电邮:bonnie@gmail.com 文件: 姓名:Jhon |电子邮件:john@gmail.com 姓名:Bonnie |电子邮件:bonnie@gmail.com 表单工作正常,问题在于fwrite函数。 我试着这样做 $arquivo = fopen("in

我是PHP的初学者,我对fwrite函数有一些问题。 我需要将信息写在一行中,在经常使用表单的用户使用表单后,表单的信息转到另一行

例如:

用户1: 形式 姓名:约翰 电邮:john@gmail.com

用户2: 形式 姓名:邦妮 电邮:bonnie@gmail.com

文件: 姓名:Jhon |电子邮件:john@gmail.com 姓名:Bonnie |电子邮件:bonnie@gmail.com

表单工作正常,问题在于fwrite函数。 我试着这样做

$arquivo = fopen("info.txt", "a+");
        $txt = $nome."|".$data."|".$cidade."|".$email."|".$senha."\r\n";
        fwrite($arquivo, $txt);
        fclose($arquivo);
这样,每次重新加载页面时,都会复制以前的数据

对不起,我的英语不好。
提前感谢。

根据您在问题中所说的,函数和表单工作正常,但您的代码会在页面刷新时触发。您需要做的是将write函数绑定到操作

有两种方法可以做到这一点

1) 仅使用php和Html就是创建一个
,并执行一个操作,该操作将指向您的php文件,即您的write函数存在。你需要一个提交按钮,我想你已经有了,因为你的表格工作良好。这样,每次提交表单时,都会触发函数,而不是页面刷新

<form action="your_php_file.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

名称:
电子邮件:
这只是一个基本的例子,你可以把它扩展到你想要的东西。只需确保在php文件中使用
$\u POST['name']
$\u POST['email']
来检索输入字段的值

2) 使用Html、Javascript+ajax、php


在本例中,您不需要表单,但需要使用javascript选择器获取元素的值。然后,使用事件
onClick
进行ajax调用,将所有html值发送到php文件,并以相同的方式检索值。在这种情况下,您的页面将不会刷新。

您可以使用JSON,它已经拥有所有用于字符串解析的工具。。。只是一个暗示