Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Usar funcion PHP en HTML a través de js

Estas en el tema de Usar funcion PHP en HTML a través de js en el foro de Javascript en Foros del Web. Muy buenas chic@s, Me estoy metiendo en un pequeño fregao, ya que no sé como puede funcionar esto. Dispongo de un documento PHP que contiene ...
  #1 (permalink)  
Antiguo 09/05/2017, 13:15
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Usar funcion PHP en HTML a través de js

Muy buenas chic@s,

Me estoy metiendo en un pequeño fregao, ya que no sé como puede funcionar esto.

Dispongo de un documento PHP que contiene una función para listar imágenes de una carpeta y formatearlo (una galería de to la vida).

La cosa es no sé a incluir esta galería en un proyecto mayor que está realizado en HTML.

Ejemplo de php:
Código PHP:
Ver original
  1. <?php
  2.     function listar_fotos($carpeta){
  3.         //Lo que sea
  4.         echo '<img class="img_demo" src="'.$carpeta."/".$archivo.'" >';
  5.         //Lo que sea
  6.     }
  7. ?>

ejemplo HTML:
Código HTML:
Ver original
  1. <!--Galeria-->
  2.     <div class="row">
  3.         <div class="col-md-12">
  4.             <!-- no sabría completarlo para llamar esa funcion-->
  5.         </div>
  6.     </div>

Dejando a un lado que no sabría como completar esa entrada de html, he realizado una primera versión de la función de js, pero no sabría como llamarlo y no sé si este funciona correctamente. He tocado muy pocas veces el js y ando bastante perdido.

Código Javascript:
Ver original
  1. //Listar fotos(cuando cumple la funcion, load llama a esta funcion)
  2. function fotos_lista(){
  3.     $.ajax({
  4.         url: 'fotos_lista.php',
  5.         type: 'post',
  6.         dataType: 'html',
  7.         data: { condicion: "ejecutarFuncion"},
  8.         success:function(resultado){
  9.             alert(resultado);
  10.         }
  11.     }
  12. }

¿Álguien podría remitirme a algún ejemplo o similar para poder realizar esto?
Intento que no tenga que cambiar el otro fichero a extensión .php

Muchas gracias de antemano
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds
  #2 (permalink)  
Antiguo 10/05/2017, 04:48
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Respuesta: Usar funcion PHP en HTML a través de js

¿Alguien podría orientarme un poco? ando bastante perdido, y sino, tengo que hacer la galería estática
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds
  #3 (permalink)  
Antiguo 10/05/2017, 07:19
 
Fecha de Ingreso: noviembre-2015
Mensajes: 231
Antigüedad: 8 años, 5 meses
Puntos: 86
Respuesta: Usar funcion PHP en HTML a través de js

Se supone que la función php es un ciclo. Con nowdoc o heredoc puedes crear un string. Este string sera la respuesta ajax. Y esa respuesta la añades al elemento html, en tu caso a class="col-md-12" con alguno de los métodos que existen text(), html(), append(), etc
  #4 (permalink)  
Antiguo 11/05/2017, 11:26
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Respuesta: Usar funcion PHP en HTML a través de js

El caso es que no sé como hacerlo, ya que no domino JS. De ahí que ando buscando un tutorial, no sé como hacer que la petición AJAX funcione correctamente.
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds
  #5 (permalink)  
Antiguo 11/05/2017, 12:30
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Respuesta: Usar funcion PHP en HTML a través de js

He probado a realizar lo siguiente:
Código HTML:
Ver original
  1. ...
  2. <div class="row">
  3.     <div id="contenidoGaleria" class="col-md-12"></div>
  4. </div>
  5. ...
Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $("#contenidoGaleria").load("fotos_lista.php");
  3. });
Pero no me llega a mostrar nada, además que tendría que pasarle a fotos_lista.php una variable, que es carpeta.
¿me podrían orientar un poco? Esta idea la he sacado de aqui: https://www.w3schools.com/jquery/jquery_ajax_intro.asp
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds
  #6 (permalink)  
Antiguo 11/05/2017, 13:03
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Respuesta: Usar funcion PHP en HTML a través de js

Te soy franco y no entiendo tu confucion y problema

si ya tienes
Código Javascript:
Ver original
  1. //Listar fotos(cuando cumple la funcion, load llama a esta funcion)
  2.     function fotos_lista(){
  3.         $.ajax({
  4.             url: 'fotos_lista.php',
  5.             type: 'post',
  6.             dataType: 'html',
  7.             data: { condicion: "ejecutarFuncion"},
  8.             success:function(resultado){
  9.                 alert(resultado);
  10.             }
  11.         }
  12.     }
  13.  
  14.  
  15. // cambia el evento success
  16.  
  17. function fotos_lista(){
  18.         $.ajax({
  19.             url: 'fotos_lista.php',
  20.             type: 'post',
  21.             dataType: 'html',
  22.             data: { condicion: "ejecutarFuncion"},
  23.             success:function(resultado){
  24.                 $('#elemento').html(resultado);
  25.             }
  26.         }
  27.     }

Porque no haces uso de esto mismo para cargar el contendio
  #7 (permalink)  
Antiguo 11/05/2017, 14:41
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Respuesta: Usar funcion PHP en HTML a través de js

Cita:
Iniciado por ArturoGallegos Ver Mensaje
Te soy franco y no entiendo tu confucion y problema

si ya tienes
Código Javascript:
Ver original
  1. //Listar fotos(cuando cumple la funcion, load llama a esta funcion)
  2.     function fotos_lista(){
  3.         $.ajax({
  4.             url: 'fotos_lista.php',
  5.             type: 'post',
  6.             dataType: 'html',
  7.             data: { condicion: "ejecutarFuncion"},
  8.             success:function(resultado){
  9.                 alert(resultado);
  10.             }
  11.         }
  12.     }
  13.  
  14.  
  15. // cambia el evento success
  16.  
  17. function fotos_lista(){
  18.         $.ajax({
  19.             url: 'fotos_lista.php',
  20.             type: 'post',
  21.             dataType: 'html',
  22.             data: { condicion: "ejecutarFuncion"},
  23.             success:function(resultado){
  24.                 $('#elemento').html(resultado);
  25.             }
  26.         }
  27.     }

Porque no haces uso de esto mismo para cargar el contendio
Muchas gracias por tu ayuda, acabo de fijarme que no me funcionaba, porque me faltaba un ); para terminar el ajax....

Dejo abajo como solucioné, por si en un futuro lo necesita algún compañero y como tomo el valor en el php.

Funcion php:



Código Javascript:
Ver original
  1. function fotos_lista(){
  2.     var cImg= 'G1';//Uso G1 como ejemplo
  3.     $.ajax({
  4.         url: 'listar_fotos.php',
  5.         type: 'post',
  6.         dataType: 'html',
  7.         data: {carpeta: cImg},
  8.          success:function(data){
  9.             $('div#div1').html(data);
  10.         }
  11.     });//Este cierre me faltó, cuando uno se ofusca...
  12. }

Código PHP:
Ver original
  1. $carpeta = $_POST['carpeta'];
  2. function listar_fotos($carpeta){...}
  3. listar_fotos($carpeta); //para cargar la funcion

Un saludo a todos y cierro el post como solucionado
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds

Etiquetas: forma, funcion, html, js, php, url, usar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:26.