elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Pasar un array de una pagina php a otra Js
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pasar un array de una pagina php a otra Js  (Leído 3,210 veces)
protus08

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Pasar un array de una pagina php a otra Js
« en: 25 Julio 2020, 03:40 am »

Hola todos, espero me puedan ayudar, tengo 3 paginas 2 php y una js, necesito que al presionar un botón en la primera pagina php pueda pasar un array otra pagina js y esta envie esos datos a otra pagina php y esta ultima lo procese e imprima el resultado en primera pagina php, pero no se como hacerlo, si quiero pasar un dato lo puedo hacer pero no se como hacerlo con un arrray.

este es mi código donde tengo el botón, dependiendo de lo que triga de la base de datos, me crea N input , que es lo son los que necesito pasar a la pagina js y como lo había dicho antes solo consigo que me pase el valor del primero que encuentra.
pagina1.php
Código
  1. @extends('layouts.app2')
  2.  
  3. @section('contenido')
  4.  
  5.      <div class='container'>
  6.  
  7.            <form id='formulario'>
  8.  
  9.        <div class='row md-2'>
  10.  
  11.                   <button class='btn-secondary btn-default row mt-5' type='submit' id='analizar' name='analizar'>Analizar</button>
  12.  
  13.  
  14.  
  15.          </div>
  16.  
  17.          <div class='row'>
  18.  
  19.  
  20.  
  21.                <table class='table  table-format table-hover'>
  22.  
  23.                  <thead>
  24.  
  25.                    <tr>
  26.  
  27.                       <th scope='col'>IP</th>
  28.  
  29.                      </tr>
  30.  
  31.                  </thead>
  32.  
  33.                  <tbody>
  34.  
  35.                 @foreach ($enlaces as $enla)
  36.  
  37.  
  38.  
  39.                     <tr>
  40.  
  41.                       <td><input id='prueba1' type='text' name='ip'  value='{{$enla.ip}}'></td>
  42.  
  43.                      <td><div id='estado'><div id='respuesta'></div></td>
  44.  
  45.                      </tr>
  46.  
  47.  
  48.  
  49.                @endforeach
  50.  
  51.  
  52.  
  53.                  </form>
  54.  
  55.                  <script src="{{ asset('js/app/ping.js')}}"></script>
  56.  
  57.                  </tbody>
  58.  
  59.              </table>
  60.  
  61.         </div>
  62.  
  63.     </div>
  64.  
  65. @endsection
  66.  

este de aca es mi codigo js, donde solo me procesa el primer input que encuentra,y lo envia a otra pagina php donde trabajo ese datos. (solo logro que tome el primer input que pilla, no se como hacer para que recorra todos los que se creen en foreach de la pagina php)

Pagina2.js

Código
  1. formulario.addEventListener('submit',function(e){
  2.  
  3.  e.preventDefault();
  4.  
  5. console.log('pinchaste el boton')
  6.  
  7. var datos = new FormData(formulario);
  8.  
  9. console.log(datos.get('ip'))
  10.  
  11.  
  12.  
  13.  
  14.  
  15. fetch('http://localhost/scadabita2/resources/views/app/post.php',{
  16.  
  17.  method:'POST',
  18.  
  19.  body:datos
  20.  
  21. })
  22.  
  23. .then( res => res.json())
  24.  
  25. .then( data => {
  26.  
  27.  console.log(data)
  28.  
  29.  if(data === 'error')
  30.  
  31.  {
  32.  
  33.    respuesta.innerHTML=`<div>
  34.  
  35.   error
  36.  
  37.    </di>`
  38.  
  39.  }else{
  40.  
  41.    respuesta.innerHTML=`<div>
  42.  
  43.    ${data}
  44.  
  45.    </di>`
  46.  
  47.  }
  48.  
  49.  
  50.  
  51. })
  52.  
  53. })
  54.  

esta es la pagina php que procesa el dato que envia la pagina js e imprime el resultado en la primera pagina php
pagina3.php
Código
  1. <?php
  2.  
  3. $data=$_POST['ip'];
  4.  
  5. $PING1='ping '.$data.' -n 4';
  6.  
  7.   $res=shell_exec($PING1);
  8.  
  9.   $var=strstr($res, '(100% perdidos)');
  10.  
  11.   $findme='recibidos = 0';
  12.  
  13.   $pos = strpos($res, $findme);
  14.  
  15.  
  16.  
  17.   if($pos == false)
  18.  
  19.   {
  20.  
  21.       $findme='recibidos = 4';
  22.  
  23.        $pos = strpos($res, $findme);
  24.  
  25.  
  26.  
  27.            if($pos == false)
  28.  
  29.            {
  30.  
  31.                $RESULTADO="OKNOK.jpg";
  32.  
  33.                echo json_encode("<img src='../img/".$RESULTADO."'>");
  34.  
  35.            }
  36.  
  37.            else
  38.  
  39.            {
  40.  
  41.                $RESULTADO="Ok.jpg";
  42.  
  43.                echo json_encode("<img src='../img/".$RESULTADO."'>");
  44.  
  45.            }
  46.  
  47.  
  48.  
  49.    }else
  50.  
  51.        {
  52.  
  53.        $RESULTADO="NOk.jpg";
  54.  
  55.            echo json_encode("<img src='../img/".$RESULTADO."'>");
  56.  
  57.        }
  58.  
  59.  
  60.  
  61. ?>
  62.  

Espero me puedan ayuda por favorr!!!


En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Pasar un array de una pagina php a otra Js
« Respuesta #1 en: 26 Julio 2020, 10:44 am »

No te termine de entender del todo, pero si queres pasar muchos campos con el mismo nombre podes usar la notacion de array de php en el nombre del mismo en tu archivo pagina1.php agregandole corchetes [] en el atributo name:

Código
  1. <td><input id='prueba1' type='text' name='ip[]'  value='{{$enla.ip}}'></td>

Sin agregar los corchetes cada nuevo elemento de tu bucle esta sobreescribiendo al anterior y al final solo tendras un único valor para la variable ip cuyo valor sera el del ultimo item del foreach.


« Última modificación: 26 Julio 2020, 10:46 am por [u]nsigned » En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
protus08

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Pasar un array de una pagina php a otra Js
« Respuesta #2 en: 27 Julio 2020, 02:25 am »

No te termine de entender del todo, pero si queres pasar muchos campos con el mismo nombre podes usar la notacion de array de php en el nombre del mismo en tu archivo pagina1.php agregandole corchetes [] en el atributo name:

Código
  1. <td><input id='prueba1' type='text' name='ip[]'  value='{{$enla.ip}}'></td>

Sin agregar los corchetes cada nuevo elemento de tu bucle esta sobreescribiendo al anterior y al final solo tendras un único valor para la variable ip cuyo valor sera el del ultimo item del foreach.

muchas gracias por responder, cambie lo que me indicas, pero básicamente lo que no se, es como hacer para pasar ese arreglo a la pagina donde tengo mi codigo JS y como procesarla ahí, para pasarla a la otra pagina php y recibir el resultado en la primera pagina php. si me pudieras ayudar por favor.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Copiar parte de una array a otra array
Programación Visual Basic
sircid 3 5,259 Último mensaje 19 Diciembre 2007, 11:27 am
por LeandroA
CARGAR UNA PAGINA DENTRO DE OTRA UNA Y OTRA VEZ
PHP
bleyarkngel 0 4,675 Último mensaje 29 Junio 2009, 01:03 am
por bleyarkngel
javascript - Pasar valores de una página a otra
Desarrollo Web
ReViJa 0 3,740 Último mensaje 24 Marzo 2011, 11:44 am
por ReViJa
form action ejecutar dos php uno ubicado en mi pagina y otro en otra pagina
Desarrollo Web
binario010101 1 4,769 Último mensaje 1 Marzo 2013, 21:45 pm
por kalvinman
Pasar Array de una funcion a otra
Programación C/C++
YDOM 8 4,443 Último mensaje 2 Junio 2014, 01:14 am
por MessageBoxA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines