Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

267
Visualizações
PHP Array no agrega nuevos elementos desde el formulario HTML

Nuevo en PHP y desarrollo web. Me siento estúpido al preguntar esto, pero he estado buscando respuestas durante horas y no puedo encontrar nada. Si esto ha sido respondido antes, por favor vincúleme... ¡Gracias por cualquier ayuda!

Descripción: usando un formulario HTML, pasa valores como una matriz a una matriz PHP. Funciona la primera vez, pero cuando vuelvo al formulario e intento agregar otro conjunto de valores, anula los valores en el índice 0.

Lo que he probado: array_push($log, $_POST["info"]) y $log[] = $_POST["info"]; = mismo resultado, el índice en 0 se sobrescribe.

código HTML

 <?php $date = date('d/m/Y h:i', time());?> <form class="contact-form" action="/server.php" method="post"> <input type="text" name="info[]" placeholder="Full name" required> <textarea name="info[]" rows="5" cols ="80" placeholder="Message" required></textarea> <input type="hidden" name="info[]" id="date-time" value="<?php echo $date; ?>"> <button type="submit" name="submit">Submit Message</button> </form>

Código PHP

 <?php $log = array(); if(isset($_POST["info"])){ array_push($log, $_POST["info"]); } var_dump($log); ?>

Resultado actual

 array(1) { [0]=> array(3) { [0]=> string(12) "Blunder King" [1]=> string(28) "Blundering all the day long." [2]=> string(16) "27/11/2021 02:48" } }

Cuando trato de agregar otro valor a la matriz de registro de $, se sobrescribe en lugar de mover un nuevo índice.

 array(1) { [0] => array(3) { [0]=> string(12) "Blunder King" [1]=> string(28) "Blundering all the day long." [2]=> string(16) "27/11/2021 02:48" }, // would expect new array values at index 1. But instead I get these values overwriting index 0 above. [1] => array(3) { [0]=> string(12) "Blunder Queen" [1]=> string(30) "Blundering all the day long." [2]=> string(16) "27/11/2021 02:51" } }
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Simplemente cambie ligeramente su código para usar SESSION:

 <?php session_start(); $date = date('d/m/Y h:i', time());?> <form class="contact-form" action="server.php" method="post"> <input type="text" name="info[]" placeholder="Full name" required> <textarea name="info[]" rows="5" cols ="80" placeholder="Message" required></textarea> <input type="hidden" name="info[]" id="date-time" value="<?php echo $date; ?>"> <button type="submit" name="submit">Submit Message</button> </form>

Para servidor.php

 <?php session_start(); if ( ! isset($_SESSION["log"])){ $_SESSION["log"] = array(); } if(isset($_POST["info"])){ array_push($_SESSION["log"], $_POST["info"]); } var_dump($_SESSION["log"]); ?>

O simplemente combine los dos y ejecútelo y verá el resultado en un solo php:

 <?php session_start(); ?> <?php $date = date('d/m/Y h:i', time());?> <form class="contact-form" action="#" method="post"> <input type="text" name="info[]" placeholder="Full name" required> <textarea name="info[]" rows="5" cols ="80" placeholder="Message" required></textarea> <input type="hidden" name="info[]" id="date-time" value="<?php echo $date; ?>"> <button type="submit" name="submit">Submit Message</button> </form> <?php if ( ! isset($_SESSION["log"])){ $_SESSION["log"] = array(); } if(isset($_POST["info"])){ array_push($_SESSION["log"], $_POST["info"]); } var_dump($_SESSION["log"]); ?>
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda