Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

151
Views
después de la validación de js y los datos de redir se pierden y no están disponibles para la validación de php

Hola, no puedo entender por qué no funciona. Tengo un formulario simple y quiero validar en el lado del cliente con una simple redirección xmlrequest a otra página, hacer allí la validación del servidor y trabajar con parámetros validados. todo en js vanila y php puro.

html:

 <form action="" novalidate="novalidate" autocomplete="off" id="name-group"> <div class="form-group"> <label for="number">*Number:</label> <input value="" type="text" name="number" id="number" class="form-control"> </div> <input type="submit" value="Submit" name="submit" id="submit" class="btn btn-primary"> </form>

validación js:

 document.getElementById("submit").addEventListener('click', function (event) { event.preventDefault(); let number = document.getElementById("number").value; let numberRegex = "^[0-9]$"; let errorMsg = ''; if (number.match(numberRegex)) { let xhr = new XMLHttpRequest(); let params = "number=" + number; xhr.open("POST", './uploadValidation.php',true) xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded') // xhr.onload = function () { // } xhr.send(encodeURI(params)); window.location.assign('./uploadValidation.php') } else { errorMsg = 'required number field'; } document.getElementById("errorMsg").innerHTML = errorMsg });

después de esto quiero redirigir a otra página y hacer la validación del servidor

 <?php //errors $errors = [ 'number' => '', ]; var_dump($_POST); //validation if (isset($_POST['submit'])) { $number = htmlentities(trim($_POST['number']), ENT_QUOTES, 'UTF-8'); echo true; //check for error in userName field if (!$number || mb_strlen($number) < 1) { $form_valid = false; $errors['number'] = '*required field'; } } ?>

y los datos se pierden. $_POST['number'] no está disponible. Por favor, ¿alguien puede explicarme por qué no funciona y cómo solucionarlo?

EDITAR: Quiero obtener información del usuario en la primera página y después de que js y la validación de php funcionen con la entrada en la segunda página. En mi caso, agregue dinámicamente el campo de entrada (la cantidad de campos = número de la primera entrada del usuario).

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!