[html] div wordt uitgevoerd in textarea

Pagina: 1
Acties:
  • 52 views sinds 30-01-2008

  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Topicstarter
Hoi allemaal,

Ik ben bezig met een systeem waarmee ik mijn site online kan onderhouden. Niets nieuws dus. Nu wil ik ook de mogelijkheid om direct in de code van de complete pagina te kunnen programmeren.,

De complete code van de pagina komt direct uit een sql database. Nu heb ik het systeem zo gemaakt dat de complete code van de pagina in een textarea terecht komt.

En dan nu het probleem: Er zitten div tags in de pagina en die worden uitgevoerd. Dat betekend dat die layers gewoon uitgevoerd worden in mijn systeem. Er komen dus gewoon delen tekst en knoppen in beeld te staan.

Hier het voorbeeld ervan:

Afbeeldingslocatie: http://www.estienne.nl/got.gif

Hoe moet ik die divs uitschakelen zodat ik ze gewoon net als andere code in die textarea kan zien?

p.s. ik gebruik php & mysql voor het achterliggende gedeelte.

cd /usr/ports/www/porn make install


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 10:56

crisp

Devver

Pixelated

wat dacht je van htmlspecialchars of htmlentities gebruiken:
PHP:
1
echo '<textarea>'.htmlentities($data).'</textarea>';

[ Voor 26% gewijzigd door crisp op 19-08-2003 14:26 ]

Intentionally left blank


  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Topicstarter
Oke dank je Crisp, ik maak nu gebruik van htmlspecialchars en de weergave in het systeem is nu goed. (zie plaatje)

Afbeeldingslocatie: http://www.estienne.nl/got1.gif

Het wordt dus goed weergegeven in IE6 en Firebird, de browsers waarin ik het systeem test. Er is helaas een nieuw probleem en dat is dat wanneer ik na een verandering op update klik in IE6, dat er dan niets gebeurd.
In Firebird krijg ik een pagina met de volgende foutmelding te zien:

Request-URI Too Large
The requested URL's length exceeds the capacity limit for this server.

request failed: URI too long

Ik heb eerlijk gezegd nog niet gezocht naar een oplossing voor dit nieuwe probleem maar dat doe ik vanavond. Mocht iemand nog tips hebben laat ze hier maar achter. Alvast bedankt dan.

cd /usr/ports/www/porn make install


  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
Gebruik je de GET methode in het form :?

[ Voor 4% gewijzigd door supakeen op 19-08-2003 19:13 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 10:56

crisp

Devver

Pixelated

verstuur de data niet via GET maar via POST

Intentionally left blank


  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Topicstarter
(Ah minder, ik was zelfs vergeten om een method aan te geven. Erg dom natuurlijk. Het werkt nu helemaal op en top. Bedankt voor alle hulp.)

Oke ik ben net iets te voorbarig geweest.

Er is nu een ander probleem, namelijk dat de php-code in het systeem gewoon uitgevoerd wordt. De complete code van de pagina komt dus in een textarea te staan. Zo roep ik hem aan: <? show_block_source(8); ?>

Dit is de code:
code:
1
2
3
4
5
6
7
8
function show_block_source($blocknr)
{
    $query = "SELECT info FROM home WHERE datablock = ".$blocknr;   
    $result = mysql_query($query);                  
    $num_results = mysql_num_rows($result);     //Wordt nog niet gebruikt       
    $row = mysql_fetch_array($result);              
    echo htmlspecialchars($row["info"]);                
}

Als ik de database wil updaten dan gebruik ik de volgende query: $query = "UPDATE home SET info = '$info' WHERE datablock = '$blocknr'"; Dit werkt in principe allemaal goed.

Hoe kan ik er voor zorgen dat de php-code rauw wordt weergegeven, net zoals de html?
Op php.net heb ik al in de functie lijst gezocht naar iets van phpspecialchars e.d. maar dat leverde niets op.
unhtmlentities werkt ook niet want dat is alleen voor de html code.

[ Voor 80% gewijzigd door TeasingU op 20-08-2003 11:42 . Reden: ander probleem ]

cd /usr/ports/www/porn make install


Verwijderd

het bestand opslaan als .phps
of het bestand zelf uitlezen via php met file() ofzo.

  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Topicstarter
Ik heb het nu buiten de database om gedaan.

Deze simpele code heb ik gebruikt:

code:
1
2
$file = readfile("main2.php");
echo $file;


Alle div tags worden nu als tekst geplaatst binnen de textarea, dat is goed. Alleen de php-code wordt niet weergegeven in de textarea. Als ik de code bekijk in de browser dan staat de php code er wel weergegeven maar dan dan wel rauw. dus:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<textarea cols="70" rows="10">
<html>
<head>

<title>estienne</title>
<link rel="stylesheet" type="text/css" href="style.php">
</head>

<body>

<div id="Layer7" style="position:absolute; left:155px; top:25px; width:211px; height:56px; z-index:10"><font color="#009900">Hier staat gewoon tekst</font></div>

<? echo "toppers"; ?>
</body>
</html>
</textarea>


main2.php wordt wel goed uitgevoerd als je hem normaal bekijkt. Ook heb ik hem al main2.phps en main2.txt genoemd. Daar zit qua uitvoer geen verschil tussen.

heeft iemand nog een idee hoe ik de php code ook rauw kan laten weergeven? of heeft iemand nog tips wat ik zou kunnen proberen of in welke richting ik moet denken?

cd /usr/ports/www/porn make install


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

htmlentities ()

Overigens moet je de manual over readfile() ook maar even lezen, want hoe je 'm hier gebruikt klopt niet helemaal.

Verder komt je met file() en implode een eind om tot de functie te komen die jij met readfile bedoelt, in versies lager dan 4.3.0.

Verder basic zoek/nadenkwerk etc.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.