all_da_riots
Grünschnabel
Hallo zusammen,
ich habe ein kleines Problem damit Paramter von php an xsl zu übergeben. Es kann jedoch auch sein, dass in meiner xsl-Datei Fehler drinstecken - finde den Fehler aber nicht.
Also, folgendes habe ich vor:
über Die Funktion xslt_process() können paramter von php an xsl übergeben werden. Das geschieht meines Wissens wie folgt:
$doz soll der paramter sein.
Der Syntax müsste richtig sein, aber anscheinend wird $xslparam nicht an die $xsl übergeben, oder es steckt ein Fehler in der XSL-Datei (ich weiß, sie ist nicht sehr sauber geschrieben, bin halt nicht so fir in xml):
Was ich machen wil, ist relativ klar, oder? Ich habe eine XML-Vorlesungsverzeichnis und ich will, dass man den Dozenten wählen kann und dessen Lehrveranstaltungen werden dann ausgeben.
Das Auslesen des ganzen Vorlesungsverzeichnisses ist kein Problem, sobald ich jedoch die if-Abfrage reinschalte, kommt nix
Weiß jemand Rat?
Danke!
ich habe ein kleines Problem damit Paramter von php an xsl zu übergeben. Es kann jedoch auch sein, dass in meiner xsl-Datei Fehler drinstecken - finde den Fehler aber nicht.
Also, folgendes habe ich vor:
über Die Funktion xslt_process() können paramter von php an xsl übergeben werden. Das geschieht meines Wissens wie folgt:
$doz soll der paramter sein.
Code:
$xml = 'soziologie.xml';
$xsl = 'vz.xsl';
$xslt = xslt_create();
$doz = "Meier";
$xslparam = array('VLehrpersonNachname' => urldecode($doz));
$result = xslt_process($xslt, $xml, $xsl, NULL, $xslparam);
$result = iconv("UTF-8", "ISO-8859-15", "$result");
xslt_free($xslt);
echo $result;
Der Syntax müsste richtig sein, aber anscheinend wird $xslparam nicht an die $xsl übergeben, oder es steckt ein Fehler in der XSL-Datei (ich weiß, sie ist nicht sehr sauber geschrieben, bin halt nicht so fir in xml):
Code:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="VLehrpersonNachname" />
<xsl:template match="/">
<xsl:for-each select="publishDetail/Ueberschrift/Tree/Ueberschriften">
<xsl:for-each select="Ueberschrift">
<tr> <td><b><xsl:value-of select="UeberschriftBezeichnung"/></b></td> </tr>
<xsl:for-each select="Veranstaltung">
<xsl:if test="VLehrperson/VLehrpersonNachname = $VLehrpersonNachname">
<td style="background-color:#F2F2E5;"><xsl:value-of select="VLehrperson/VLehrpersonNachname"/></td>
<td style="background-color:#F2F2E5;"><xsl:value-of select="VTyp"/></td>
<td style="background-color:#F2F2E5;"><xsl:value-of select="VBezeichnung"/></td>
<td style="background-color:#F2F2E5;"><xsl:value-of select="VTermin/VTWochenTag"/></td>
</tr>
</xsl:if>
...
Was ich machen wil, ist relativ klar, oder? Ich habe eine XML-Vorlesungsverzeichnis und ich will, dass man den Dozenten wählen kann und dessen Lehrveranstaltungen werden dann ausgeben.
Das Auslesen des ganzen Vorlesungsverzeichnisses ist kein Problem, sobald ich jedoch die if-Abfrage reinschalte, kommt nix
Weiß jemand Rat?
Danke!