¿Cómo enviar datos de formulario HTML directamente a un archivo JSON?

La tarea es enviar datos de forma HTML directamente al archivo JSON.

Enfoque: tenemos un formulario HTML que contiene varios campos, como nombre, universidad, etc. Queremos enviar los datos de nuestro formulario HTML directamente al archivo JSON. Para esto estamos usando la función json_encode() que devuelve una string codificada en JSON.

Estamos creando una array de valores que el usuario completa en el formulario HTML. Luego pasamos esta array a la función json_encode() . Luego , la función json_encode() devuelve una string codificada en JSON. Toda la tarea se implementa en una función de PHP get_data() . Para crear un archivo JSON usamos la función de PHP file_put_contents() . Esta función se utiliza para escribir datos en un archivo. Pasamos 2 argumentos en la función file_put_contents() . El primer parámetro es nuestro nombre de archivo en el que queremos almacenar datos en formato JSON y el segundo es nuestra función get_data() .

Ejemplo: Los siguientes códigos HTML y PHP demuestran el enfoque anterior.

<html>
  
<head>
    <meta charset="UTF-8">
  
    <style>
        h3 {
            text-align: center;
        }
  
        img {
            display: block;
            margin: auto;
            height: 150px;
            width: 150px;
        }
  
        .input {
            margin: 6px;
            padding: 10px;
            display: block;
            margin: auto;
            color: palevioletred;
            font-size: 30px;
        }
  
        input {
            width: 90%;
            display: block;
            margin-left: 12px;
            background: none;
            background-color: lightyellow;
        }
  
        select {
            width: 90%;
            display: block;
            margin-left: 12px;
            background: none;
            background-color: lightyellow;
        }
  
        #heading {
            font-family: cursive;
            text-align: center;
            color: green;
            padding-top: 20px;
  
        }
  
        #form_page {
            height: 500px;
            width: 50%;
            display: flex;
            flex-wrap: wrap;
            flex-direction: row;
            margin: auto;
  
        }
  
        #form_body {
            border-radius: 12px;
            height: 330px;
            width: 450px;
            background-color: beige;
            border: 1px solid pink;
            margin: auto;
            margin-top: 12px;
        }
  
        #text {
            color: red;
            width: 100px;
        }
  
        #head {
            border-bottom: 2px solid red;
            height: 100px;
            background-color: aliceblue;
        }
  
        #submit {
            background-color: white;
            width: 70px;
        }
    </style>
  
</head>
  
<body>
  
    <form method="post" action="gfg.php">
  
        <div id="form_page">
  
            <div id="form_body">
                <div id="head">
                    <h1 id="heading">GFG</h1>
                </div>
                <br />
                <div id="input_name" class="input">
                    <input id="name" type="text" 
                        Placeholder="Name" name="name" 
                        required>
                </div>
                <div id="input_class" class="input">
                    <input type="text" placeholder=
                        "Branch" name="branch" required>
                </div>
                <div id="input_year" class="input">
                    <input id="school" type="text" 
                        name="college" 
                        placeholder="College">
                </div>
  
                <div class="id input">
                    <input id="submit" type="submit" 
                        name="submit" value="submit" 
                        onclick="on_submit()">
                </div>
            </div>
        </div>
    </form>
  
</body>
  
</html>

gfg.php Este archivo “gfg.php” muestra el código PHP en el que se envían los contenidos del formulario HTML.

<?php
    
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
          
        function get_data() {
            $datae = array();
            $datae[] = array(
                'Name' => $_POST['name'],
                'Branch' => $_POST['branch'],
                'College' => $_POST['college'],
            );
            return json_encode($datae);
        }
          
        $name = "gfg";
        $file_name = $name . '.json';
       
        if(file_put_contents(
            "$file_name", get_data())) {
                echo $file_name .' file created';
            }
        else {
            echo 'There is some error';
        }
    }
?>

Salida: El contenido del archivo «gfg.json» muestra los siguientes datos en formato JSON.

PHP es un lenguaje de secuencias de comandos del lado del servidor diseñado específicamente para el desarrollo web. Puede aprender PHP desde cero siguiendo este tutorial de PHP y ejemplos de PHP .

Publicación traducida automáticamente

Artículo escrito por mynkgpt16 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *