Hallo allemaal,
Voor mijn CMS systeem maak ik gebruik van een iframe als een soort van word op een internet pagina. Met met de php functie "strip_tags()" verwijder ik alle tags die niet door het iframe gemaakt kunnen worden. Een </P> wordt ook verandert naar een <BR>.
dit doe ik om te voorkomen dat iemand met Javascript gaat zitten werken. Mijn database ziet er zo uit:
(nid = nieuws_id, sid = site_id, uid = user_id)
Nu wordt van deze inhoud een xml-file gemaakt:
Het probleem wat ik nu heb is dat ik niet weet hoe ik hier weer goede HTML van kan maken. XML is eigenlijk voor data, maak ik wilde de gebruikers ook de mogelijkheid geven om simpele opmaak de regelen (Vet, Cursief, Onderstreept en misschien een plaatje). Ik heb deze XSL gemaakt:
Wie weet hoe ik dit kan oplossen?
Henk Erik
Voor mijn CMS systeem maak ik gebruik van een iframe als een soort van word op een internet pagina. Met met de php functie "strip_tags()" verwijder ik alle tags die niet door het iframe gemaakt kunnen worden. Een </P> wordt ook verandert naar een <BR>.
code:
1
2
3
4
5
6
7
8
9
10
| <?php
function wysiwyg_savelist($inhoud)
{
// verander toegestande tags naar UBB-tags
$inhoud = str_replace("</P>", "<br \>", $inhoud);
$inhoud = str_replace(" ", "", $inhoud);
$inhoud = strip_tags($inhoud, "<strong><em><u><br>");
return $inhoud;
}
?> |
dit doe ik om te voorkomen dat iemand met Javascript gaat zitten werken. Mijn database ziet er zo uit:
code:
1
2
3
4
5
6
| mysql> SELECT * FROM nieuws; +-----+-----+-----+-------------------------+---------------------------------------------------------------------------------------------------+------------+ | nid | sid | uid | titel | tekst | datum | +-----+-----+-----+-------------------------+---------------------------------------------------------------------------------------------------+------------+ | 1 | 1 | 1 | Test met ", ' en / en \ | Een beetje <STRONG>vette, </STRONG><EM>Cursiefe,</EM> <U>onderstreepte </U>en gewone tekst<BR> | 23-01-2002 | +-----+-----+-----+-------------------------+---------------------------------------------------------------------------------------------------+------------+ |
(nid = nieuws_id, sid = site_id, uid = user_id)
Nu wordt van deze inhoud een xml-file gemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
| <?xml version="1.0"?>
<Nieuws>
<Item Id="2">
<Titel>Test met ", ' en / en \</Titel>
<Datum>23-01-2002</Datum>
<Tekst>
Een beetje <STRONG>vette, </STRONG><EM>Cursiefe,</EM> <U>onderstreepte </U>en gewone tekst<BR \>
</Tekst>
<Auteur>Henk Erik van der Hoek</Auteur>
</Item>
</Nieuws> |
Het probleem wat ik nu heb is dat ik niet weet hoe ik hier weer goede HTML van kan maken. XML is eigenlijk voor data, maak ik wilde de gebruikers ook de mogelijkheid geven om simpele opmaak de regelen (Vet, Cursief, Onderstreept en misschien een plaatje). Ik heb deze XSL gemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" encoding="utf-8"/>
<xsl:template match="/Nieuws">
<LINK REL="stylesheet" HREF="../style.css" TYPE="text/css"></LINK>
<xsl:apply-templates />
</xsl:template>
<xsl:template match="Item">
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="0" CELLSPACING="0" CLASS="Header">
<TR>
<TD>
<DIV CLASS="Titel">
<xsl:value-of select="Titel"/>
</DIV>
</TD>
<TD ALIGN="right">
<DIV CLASS="Datum">
<xsl:value-of select="Datum"/>
</DIV>
</TD>
</TR>
</TABLE>
</TD>
</TR>
<TR>
<TD>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="0" CELLSPACING="0" CLASS="Body">
<TR>
<TD>
<DIV CLASS="Tekst">
<!-- hier komt het probleem dat iedere opmaak tag niet wordt geparsed, de tekst is wel gewoon zichtbaar -->
<xsl:value-of select="Tekst"/>
</DIV>
</TD>
</TR>
<TR>
<TD ALIGN="right" HEIGHT="20">
<DIV CLASS="Small">
Geschreven door: <xsl:value-of select="Auteur"/>
</DIV>
</TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<BR/>
</xsl:template>
</xsl:stylesheet> |
Wie weet hoe ik dit kan oplossen?
Henk Erik