Forum > Övriga serverspråk > PHP
Hej!
Jag håller på att göra ett hemsideprojekt med XML som ska stylas med XSLT.
Det jag nu vill göra är en sökfunktion och då behöver jag använda PHP i XML-dokumentet.
Jag kan använda PHP utan större problem, men det jag har problem med är hur jag skriver ett formulär i XML och transformerar det med XSLT så att det syns på skärmen.
Man kan ju inte göra formuläret i XSLT-dokumentet eftersom man inte kan nå PHP funktionen från XML-dokumentet.
Så frågan är om man kan använda <form> taggar i XML och på nått vis transformera det i XSL?
Hoppas ni förstår vad jag är ute efter :)
Mvh
//Emelie
Flyttat tråden från ASP till PHP
Om du vet hur man få ut data ifrån PHP så är det ju bara att skriva en XML struktur i ditt PHP dokument och referera till din design för XML datan(XSL).
Okej, men hur ser den XML strukturen ut?
Ska jag t.ex. i PHp koden skriva :
<?php
echo "<form>";
echo "<input type='text' size='25' value='Enter your search here!' />";
echo "</form>";
?>
för isf förstår jag fortfarande inte hur jag ska kunna med hjälp av XSLT få formuläret att synas på sidan.
Det du skrev ut där kan ju vara en XML struktur, XML är ju ren text, med en struktur som du sedan använder för XSLT att rendera ut någon typ av design.
http://php.net/manual/en/book.xslt.php
http://www.codewalkers.com/c/a/Misc...th-XSLT-and-PHP/
hmm.. Om jag säger att jag vill ha en knapp och när man trycker på den ska texten "Works!" dyka upp.
XML-kod:
<search>
<?php
$test="Don't work";
if(isset($_POST["searchbtn"]))
{
$test="Works!";
}
?>
<form>
<input type='submit' id='searchbtn' name='searchbtn' />
<value>Button</value>
</form>
<?php
echo "<text>".$test."</text>";
?>
</search>
<xsl:template match="search">
<html>
<body>
<input type="submit">
<xsl:attribute name="id">
<xsl:value-of select="form/input/@id" />
</xsl:attribute>
<xsl:attribute name="name">
<xsl:value-of select="form/input/@id" />
</xsl:attribute>
<xsl:attribute name="value">
<xsl:value-of select="form/value" />
</xsl:attribute>
</input>
<xsl:value-of select="text" />
</body>
</html>
</xsl:template>
Alla formulär, inklusive XML behöver en action på metoden, då måste postar ett formulär för att få en trigger/event att det händer, är detta en kurs du går?
Ja, det är en kurs. Men tyvärr har vi inte gått igenom PHP tillsammans med XML ordentligt.
Nåja, jag ska försöka lösa problemet. Tack för tipset om action :)
Ja, det är en kurs. Men tyvärr har vi inte gått igenom PHP tillsammans med XML ordentligt.
Nåja, jag ska försöka lösa problemet. Tack för tipset om action :)
Måste formuläret vara i xslt?
För när vi gjorde en l.iknande uppgift så var formuläret ett vanligt html form och postade queryn till xml via xpath och presenterade resultatet. Fast vi använde MSXML tillägget, men det går ju att göra liknande med PHP.