fwrite php函数未写入

fwrite php function not writing

本文关键字:函数 php fwrite      更新时间:2023-09-26

我正试图从表单中写入一个txt文件……其想法是用户按下注册按钮,这将保存在一个txt文档中并返回索引页面。

这是我的php文件:

<?php
            if(!empty($_POST)){
                $rut = $_POST['rut'];
                $dv = $_POST['dv'];
                $pnom = $_POST['pnom'];
                $snom = $_POST['snom'];
                $pape = $_POST['pape'];
                $mape = $_POST['mape'];
                $sex = $_POST['sex'];
                $dir = $_POST['dir'];
                $comu = $_POST['comu'];
                $pais = $_POST['pais'];
                $fono = $_POST['fono'];
                $movil = $_POST['movil'];
                $mail = $_POST['mail'];
                $user = $_POST['user'];
                $pass = $_POST['pass'];
                $rpas = $_POST['rpas'];
                $usuarios = fopen("usuarios.txt", "a");
                fwrite($usuarios, $rut);
                fwrite($usuarios,$dv,";");
                fwrite($usuarios,$pnom,";");
                fwrite($usuarios,$snom,";");
                fwrite($usuarios,$pape,";");
                fwrite($usuarios,$mape,";");
                fwrite($usuarios,$sex,";");
                fwrite($usuarios,$dir,";");
                fwrite($usuarios,$comu,";");
                fwrite($usuarios,$pais,";");
                fwrite($usuarios,$fono,";");
                fwrite($usuarios,$movil,";");
                fwrite($usuarios,$mail,";");
                fwrite($usuarios,$user,";");
                fwrite($usuarios,$pass,";");
                fwrite($usuarios,$rpas,"'r'n");
                fclose($usuarios);  
            }
?>

这是表单html文件:

<html>
<head>
    <title>E1Formulario</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" type="text/css" href="diseno/diseno.css">
</head>
<script language="JavaScript" src="funciones.js"></script>
<body>
    <form name="formulario" action="generar_txt.php" method="POST">
        <table border="2" align="center" width="50%">
            <th colspan="2">FORMULARIO DE INGRESO</th>
            <tr>
                <td align="left">
                    Rut:<input name="rut" type="text" size="8">
                    <select name="dv">
                        <option value = 0>0</option>
                        <option value = 1>1</option>
                        <option value = 2>2</option>
                        <option value = 3>3</option>
                        <option value = 4>4</option>
                        <option value = 5>5</option>
                        <option value = 6>6</option>
                        <option value = 7>7</option>
                        <option value = 8>8</option>
                        <option value = 9>9</option>
                        <option value = K>K</option>
                    </select>
                    <br><label name="lrut" style="color:#cc0000">*(Campo Obligatorio)</label>
                </td>
                <td align="left">Primer Nombre:* <input name="pnom" type="text"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
            </tr>
            <tr>
                <td align="left">Segundo Nombre: <input name="snom" type="text"></td>
                <td align="left">Apellido Paterno: <input name="pape" type="text"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>   
            </tr>
            <tr>
                <td align="left">Apellido Materno: <input name="mape" type="text"></td>
                <td align="left">
                    Sexo<br>
                    Masculino <input name="sex" type="radio" value="Masculino"><br>
                    Femenino  <input name="sex" type="radio" value="Femenino">
                    <br><label style="color:#cc0000">*(Campo Obligatorio)</label>
                </td>
            </tr>
            <tr>
                <td align="left">Dirección: <input name="dir" type="text" size="50"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
                <td align="left">Comuna: <input name="comu" type="text"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
            </tr>
            <tr>
                <td align="left">País: <input name="pais" type="text" size="15"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
                <td align="left">Teléfono: <input name="fono" type="text" size="9" onkeypress="JavaScript: return isNumber(event);"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td> 
            </tr>
            <tr>
                <td align="left">Movil: <input name="movil" type="text" onkeypress="JavaScript: return isNumber(event);"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
                <td align="left">Email: <input name="mail" type="text" size="25"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
            </tr>
            <tr>
                <td align="left">Usuario: <input name="user" type="text"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
                <td align="left">Contraseña: <input name="pass" type="password"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
            </tr>
            <tr>
                <td align="left" colspan="2">Repetir Contraseña: <input name="rpas" type="password" size="9"><br><label style="color:#cc0000">*(Campo Obligatorio)</label></td>
            </tr>
            <tr>
                <td colspan="2" align="center">
                    <input class="boton" name="reg" type="button" value="REGISTRAR" onclick="JavaScript: verificar_datos();"/>
                </td>   
            </tr>
        </table>
    </form> 
</body>

这是将表单提交到php文件,然后转到索引html文件的函数:

函数verifier_datos(){

var f = document.formulario;
//Validar que el usuario ingrese todos los campos obligatorios
if(f.rut.value === ""){
    alert("El Rut es un campo obligatorio!");
    f.rut.focus();
    return 0;
}
if(revisarRut(f.rut.value.concat(f.dv.value)) === 0){
    return 0;
}
if(f.pnom.value === ""){
    alert("El Nombre es un campo obligatorio!");
    f.pnom.focus();
    return 0;
}
if(f.pape.value === ""){
    alert("El Apellido Paterno es un campo obligatorio!");
    f.pape.focus();
    return 0;
}
if(f.sex.value === ""){
    alert("El Sexo es un campo obligatorio!");
    f.sex.focus();
    return 0;
}
if(f.dir.value === ""){
    alert("La Dirección es un campo obligatorio!");
    f.dir.focus();
    return 0;
}
if(f.comu.value === ""){
    alert("La Comuna es un campo obligatorio!");
    f.comu.focus();
    return 0;
}
if(f.pais.value === ""){
    alert("El País es un campo obligatorio!");
    f.pais.focus();
    return 0;
}
if(revisarTelefonos() === 0){
    return 0;
}
if(verificarEmail() === 0){
    return 0;
}
if(f.user.value === ""){
    alert("Favor ingresar su Usuario");
    f.user.focus();
    return 0;
}
if(f.pass.value === ""){
    alert("Favor Ingrese su Contraseña");
    f.pass.focus();
    return 0;
}
if(f.rpas.value === ""){
    alert("Favor repetir su contraseña en el campo repetir");
    f.rpas.focus();
    return 0;
}
if(f.rpas.value !== f.pass.value){
    alert("La Segunda Contraseña no concuerda");
    f.rpas.value = "";
    f.rpas.focus();
    return 0;
}
f.submit();
alert("DATOS DE USUARIO INGRESADOS EXITOSAMENTE");
window.location= 'index.html';

}

如果有人能带领我,我会很高兴,因为我认为我已经一切都正确了,但我仍然没有得到php来写txt文件。

首先,添加以下行,开始您的PHP文件

error_reporting(E_ALL);

现在,更改下一行:

$usuarios = fopen("usuarios.txt", "a");

收件人:

$usuarios = fopen("usuarios.txt", "a+");

如果文件不存在,a+将创建一个文件。

并且,验证文件是否已打开。

$usuarios=fopen("usuarios.txt","a+");

if (!$usuarios) {
   die("Could not open file");
} else {
    fwrite($usuarios, $rut);
    fwrite($usuarios,$dv,";");
    fwrite($usuarios,$pnom,";");
    fwrite($usuarios,$snom,";");
    fwrite($usuarios,$pape,";"); 
    fwrite($usuarios,$mape,";");
    fwrite($usuarios,$sex,";");
    fwrite($usuarios,$dir,";");
    fwrite($usuarios,$comu,";");
    fwrite($usuarios,$pais,";");
    fwrite($usuarios,$fono,";");
    fwrite($usuarios,$movil,";");
    fwrite($usuarios,$mail,";");
    fwrite($usuarios,$user,";");
    fwrite($usuarios,$pass,";");
    fwrite($usuarios,$rpas,"'r'n");
    fclose($usuarios);
}

现在,一切都会按预期进行。

此外,您应该检查文件"usuarios.txt"是否可从apache或www用户等系统的Web服务器用户写入。只需检查文件的chmod和目录