string -> html

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Yoram

Yoram

04/04/2009 12:52:00
Quote Anchor link
Hallo,

Ik wil graag een html code die ik als string heb graag als HTML zien, hier kan niemand wat mee ik probeer het met een code te laten zien:

als ik bv de html code {-test-} in een html bestand zet word hij met behulp van een str_replace en php bestand geconvert naar de tekst "dit is een test"

test.html bestand.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
{-test-}


php bestand
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

$replace_array
= file_get_contents("test.html");

$replace_array = str_replace( "{-test-}", $pagina_test, $replace_array);

$pagina_test = "Dit is een test";
?>


testen onder een browser(het html bestand) geeft dan deze output:
Dit is een test

Nu wil ik dus met een code nog een code laten gebruiken dus bijvoorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
switch($_GET['pagina']) {
case
"pagina1":
  $pagina_content = "{-test_2-}";
break;

case
"pagina2":
  $pagina_content = "{-test_3-}";
break;

default:

  $pagina_content = "{-test_1-}";
break

}

$replace_array = file_get_contents("test.html");

$replace_array = str_replace( "{-test_aantal-}", $pagina_content, $replace_array);

$replace_array = str_replace( "{-test_1-}", "Dit is pagina 1", $replace_array);
$replace_array = str_replace( "{-test_2-}", "Dit is pagina 2", $replace_array);
$replace_array = str_replace( "{-test_3-}", "Dit is pagina 3", $replace_array);

?>


De output hier van word telkens : {-test_1-} of {-test_2-} of {-test_3-}. (het ligt er dus aan welke pagina je zit)

maar kun je ook zeg maar dit met een php code laten zien als een html codes???
vergelijk het met een omkerings code zoals html_entity_decode() , of htmlentities() dus dat hij hij het ziet als HTML en geen string..

alvast bedankt..

als ik hier wat fouts doe hoor ik het graag! wil het graag verbeteren!
Gewijzigd op 01/01/1970 01:00:00 door Yoram
 
PHP hulp

PHP hulp

18/11/2024 03:58:10
 
Dennis Mertens

Dennis Mertens

04/04/2009 19:12:00
Quote Anchor link
Oke, na jou even op MSN te hebben gesproken snap ik wat je probeerd.

Gewoon een eigen versie van Template power.

Mare dan doe je toch iets fouts?

In jouw .html bestand staat bv. {-content-}. Dit blijft {-content-} en dat verschilt niet per pagina. Jij str_replaced gewoon telkens {-content-} met de tekst die bij die pagina hoort. Toch?
 

04/04/2009 19:14:00
Quote Anchor link
Ik snap het idee niet helemaal en waarom gebruik je niet fopen?
 
Dennis Mertens

Dennis Mertens

04/04/2009 19:16:00
Quote Anchor link
fopen is niet het probleem. Het openen gaat prima. Hij wil een betere manier hebben om de pagina's te replacen etc.
 

04/04/2009 19:17:00
Quote Anchor link
Wil hij de html tags van de pagina af slopen en 1 bepaalt deel ervan weergeven?
 
Yoram

Yoram

04/04/2009 19:18:00
Quote Anchor link
Ja, dat snap je goed maar nu wil ik zeg maar met een switch er voor zorgen dat er telkens een nieuwe code op de zelfde plaats komt zodat hij op de zelfde plaats blijft staan.

En wat ik hier nu mee wil bereiken is dat als ik een pagina in me CMS aanmaak dat ik die code in een textarea neer zetten zo dat hij dat automatisch als z'n code gezien word en dan automatisch de html van bv een gastenboek of nieuws berichten krijg.

ik kan dan kant en klare scripts met behulp van die code gebruiken.
 
Dennis Mertens

Dennis Mertens

04/04/2009 19:22:00
Quote Anchor link
Maak je gebruik van een pagina systeem dus?

Alle pagina's (tekst) worden in de database opgeslagen?
 
- SanThe -

- SanThe -

04/04/2009 19:23:00
Quote Anchor link
Opzich werkt dit toch al.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
switch($_GET['pagina'])
{
    case
"pagina1":  $pagina_content = "Pagina 1";
    break;
    case
"pagina2":  $pagina_content = "Pagina 2";
    break;
    default:
$pagina_content = "Default Pagina";
    break;
}


$pagina = file_get_contents("test.html");
$pagina = str_replace( "{-test-}", $pagina_content, $pagina);
echo $pagina;
?>
 
Yoram

Yoram

04/04/2009 19:26:00
Quote Anchor link
Jaa, alles word op geslagen in me database, maar omdat je wel bv dik gedrukte stukjes tekst kunt opslaan als <b> of <i> de html codes dacht ik misschien is er een manier dat je het ook kunt omkeren zodat je ze als html code weer kunt gebruiken.. want als ik de codes nu oplaat slaan krijg ik alleen die code die gekoppelt moet worden..

@SanThe, Jaa dat doet hij ook alleen die code die hij uit een variable of database haalt ziet hij als gewone tekst en geen html ofzo.. (hij ziet ze zoals ik dit bericht nu typ)

ps sorry voor de bar slechte uitleg:$
Gewijzigd op 01/01/1970 01:00:00 door Yoram
 
- SanThe -

- SanThe -

04/04/2009 19:32:00
Quote Anchor link
Als je van "Default Pagina" even "<b>Default Pagina</b>" maakt, dan is het toch bold. Dus gewoon html werkt toch. Ik snap je probleem niet.
 
Dennis Mertens

Dennis Mertens

04/04/2009 19:34:00
Quote Anchor link
Hoe bedoel je dat met die HTML code?

Je gooit toch gewoon:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Hallo, ik ben <b>Yoram</b> en mijn vriendin heet <i>Sharon</i>.
in je database?
 
Yoram

Yoram

04/04/2009 19:58:00
Quote Anchor link
Jaah, dat weet ik..

maar ik heb bijvoorbeeld een gastenboek in een map staan.. die word automatisch geinclude alleen je ziet hem pas als je hem aanroept.. ik wil zeg maar dat gastenboek op een plaats zetten met behulp van z'n html code ( bv. {-plugin_gastenboek-} ) zo dat ik niet eerst helemaal codes moet gaan aanroepen. maar alleen die html code.

test dit eens dan snap je het misschien wel..:

maak een html bestand aan en een php bestand in de html bestand zet je in de body {-tester-} neer.

in het php bestand zet je neer :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
switch($_GET['pagina'])
{
    case
"gastenboek":  $pagina_content = "{-gastenboek-}"; //om je gastenboek te laten zien.
    break;
    default:
$pagina_content = "Default Pagina";
    break;
}


$pagina = file_get_contents("test.html");
$pagina = str_replace( "{-test-}", $pagina_content, $pagina);
$pagina = str_replace( "{-gastenboek-}", "Hier komt je gastenboek te staan maar dit is een test", $pagina);
echo $pagina;

?>


Nu zal hij op de eerste pagina (default pagina) gewoon default pagina laten zien. maar als ik in de url intik index.php?pagina=gastenboek, Dan ZOU hij meoten laten zien " Hier komt je gastenboek te staan maar dit is een test " alleen dat doet hij niet hij weer geeft dan {-gastenboek-}.

maar als ik {-gastenboek-} onder {-test-} neer zet in het html bestand dan laat hij zien:
default pagina Hier komt je gastenboek te staan maar dit is een test.

dus dan doet hij het wel. en daar blijf ik dus haken
 
- SanThe -

- SanThe -

04/04/2009 20:04:00
Quote Anchor link
Maar waarom doe je het in twee stappen.
Dit werkt toch.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
switch($_GET['pagina'])
{
    case
"pagina1":  $pagina_content = "Pagina 1";
    break;
    case
"gastenboek":  $pagina_content = "Gastenboek";
    break;
    default:
$pagina_content = "Default Pagina";
    break;
}


$pagina = file_get_contents("test.html");
$pagina = str_replace( "{-test-}", $pagina_content, $pagina);
echo $pagina;
?>
 
Yoram

Yoram

04/04/2009 20:09:00
Quote Anchor link
Nu laat je als je op de gastenboek pagina zit alleen die tekst zien

maar ik wil dan een heel gastenboek zien. zonder dat ik daar eerst een hele code in hoef te zetten.
 
- SanThe -

- SanThe -

04/04/2009 20:28:00
Quote Anchor link
case "gastenboek": $pagina_content = file_get_contents('gastenboek.php');
 
Yoram

Yoram

04/04/2009 20:36:00
Quote Anchor link
Maar dan laat hij toch ook alle php codes zien ??

ik zal het eens testen!!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.