Foros del Web » Programando para Internet » PHP »

Pasar parametro a XSLT sin cargar documento XML

Estas en el tema de Pasar parametro a XSLT sin cargar documento XML en el foro de PHP en Foros del Web. Hola a tod@s, Os adelanto que no tengo ni idea de XML y poco de PHP. Voy al grano: Tengo un cgi al que le ...
  #1 (permalink)  
Antiguo 16/09/2011, 04:51
 
Fecha de Ingreso: octubre-2007
Mensajes: 25
Antigüedad: 16 años, 6 meses
Puntos: 1
Pregunta Pasar parametro a XSLT sin cargar documento XML

Hola a tod@s,

Os adelanto que no tengo ni idea de XML y poco de PHP.
Voy al grano:

Tengo un cgi al que le paso datos (usuario y pasword de conexión a BBDD, query a ejecutar, etc,...) a través de un formulario HTML creado en un documento.php.

Tengo una plantilla XSLT que se aplica al documento XML que me devuelve el CGI.

Necesito pasar el parámetro "Query" (la consulta a la BBDD) hasta el XSLT porque tengo que volver a ejecutarla desde una función JS que hay en el XSLT.

Entiendo que ese parámetro se lo tengo que pasar desde el PHP pero no me funciona, tal y cómo he visto que se hace porque en el código que he encontrado se carga primero el documento XML y luego el XSLT y luego se le pasa el parámetro:

Código PHP:
Ver original
  1. $xml = new DomDocument;
  2. $xml->load('documento.xml'); --> esto no puedo hacerlo porque no tengo el documento, tengo la ruta al CGI que lo genera
  3.  
  4. //cargo plantilla
  5. $xsl = new DomDocument;
  6. $xsl->load('Plantilla.xsl');
  7. $proc = new xsltprocessor;
  8. $proc->importStyleSheet($xsl);
  9. //asigno el valor al parámetro en el xslt
  10. $proc->setParameter("","consulta","select * from tabla ");
  11.  
  12. //pinta el xml
  13. echo $proc->transformToXML($xml);


Mi problema es que yo no tengo el documento XML en sí, al enviar el FORM con los datos el XML se carga en el ACTION de ese formulario, no puedo cargarlo con el $xml->load...¿verdad?

No sé si me he explicado bien,...
En resumen, necesito que en la tabla de datos que pinta el XSLT cuando se pinche el nombre de un campo se vuelva a ejecutar la consulta ordenada por ese campo.
Tengo el mismo FORM que llama al CGI en el XSLT y una función que debería enviar de nuevo el form con la consulta order by campo... pero soy incapaz de mandarme la consulta sin cargar el documento XML.

¿Cómo podría pasarme ese parámetro al XSLT si el XML lo genera el CGI?

Diosss, qué lío sólo explicarlo, lo siento...espero que alguien me entienda

Gracias por adelantado!!

Etiquetas: documento, html, parametro, pasar, tabla, xml, formulario, xsl, usuarios
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 00:03.