ulli: parameterstring der url auslesen und weiterverarbeiten

hi all

... das thema ist auch schon eine frage an euch ... wie kann ich mittels xsl den parameterstring der url auslesen und dann weiterverarbeiten?

cu

  1. Hallo,

    ... das thema ist auch schon eine frage an euch ...

    Ja, wenn du gesagt hättest womit du die XML/XSL Verarbeitung machst.
    Überlässt du es den Browser, geht das nicht.

    »»wie kann ich mittels xsl den parameterstring der url auslesen und dann weiterverarbeiten?

    Wenn dir dein serverseitiges Programm die Parameter in der URL übergibt, kannst du den Parameter in der XSL-Seest definieren
    <xsl:param name="meinParameter" /> und später darauf zugreifen z.B. <xsl:if test="$meinParameter = 'blabla'>

    Grüße
    Thomas

    1. hallo thomas ...

      ... ich benutze php 4+ und Sablotron ...

      1. Hallo!

        ... ich benutze php 4+ und Sablotron ...

        function sablotron($xmldatei,$xsldatei, $xml_param=false)
          {
            $xsltref=xslt_create();
            if($xml_param)
              {
                // mit Parameter Sablotron aufrufen
                $ergebnis= xslt_process($xsltref,$xmldatei,$xsldatei, NULL, array(), $xml_param);
              }
              else
                {
                   // ohne Parameter Sablotron aufrufen
                   $ergebnis= xslt_process($xsltref,$xmldatei,$xsldatei);
                }

        if($ergebnis)
             {
               // Transformationsergebnis zurück geben
               return $ergebnis;
             }
             else
               {
                 return "Die Transformation war nicht erfolgreich.".xslt_error($xsltref)."\n";
               }
            xslt_free($xsltref);
          }

        $xml_param['para1'] = $_GET['para1'];
        $xml_param['para2'] = $_GET['para2'];
        print sablotron("datei.xml","datei.xsl", $xml_param);

        Wie Du nun an die Parameter kommst, hat ja Thomas geschrieben.

        MfG, André Laugks

        --
        L-Andre @ gmx.de
      2. Hallo,

        ... ich benutze php 4+ und Sablotron ...

        Jetzt habe ich mich fast zwei Stunden rumgeärgert, weil nix funktionierte, bis ich daraufkam, dass ich einen Tippfehler hatte *grrr*.

        <?php

        // Create an XSLT processor
         $xsltHandle = xslt_create();
         $xsltParam["parameterName"] = "parameterWert";

        // Perform the transformation
          $createHTML = xslt_process($xsltHandle, 'file://F:\www\xsl\forum.xml', 'file://F:\www\xsl\forum.xsl', NULL, NULL, $xsltParam);

        // Detect errors
          if (!$createHTML) die('XSLT processing error: '.xslt_error($xsltHandle));

        // Destroy the XSLT processor
          xslt_free($xsltHandle);

        // Output the resulting HTML
          echo $createHTML;

        ?>

        Du kannst in/statt $xsltParam auch ein array() verwenden.
        Die Parameter in deiner XSl zu definieren sollst nicht vergessen.

        Weitere Lesestoff:
        http://www.fase4.com/de/tutorials/page,1,xslt.xml
        http://www.php.net/manual/en/function.xslt-process.php

        Grüße
        Thomas

  2. also noch mal genauer:

    eine url sieht ungefähr so aus : http://www.blabla.de/index.php?para1=0&para2=8

    wie komme ich jetzt an die parameter in xsl ran?