Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Beleidszaken (https://forum.scholieren.com/forumdisplay.php?f=64)
-   -   [Feature] Weergave van PHP-code (https://forum.scholieren.com/showthread.php?t=432168)

Martin 26-03-2003 21:59

[Feature] Weergave van PHP-code
 
Als je nu op S&M een reactie plaatst en je zet een stukje code tussen de PHP-tags dan zie je een paar kleurtjes en daar blijft het bij. Het krijgt echter niet de kleuren die je bij een PHP-editor te zien krijgt.

Ik zat net op het forum van Webdeveloping en mij viel hun manier van PHP-code weergeven op.

Ik zie daar een heldere achtergrond, met regelnummers en de officiële kleurcodering. Het voordeel van regelnummers weergeven is dat de gebruiker makkelijk aan kan geven waar de fout zit of waar een foutmelding optreed.

Aangezien hun ook VBulletin gebruiken lijkt het me dat dit ook wel mogelijk is bij dit forum.

Het nut? Meer performance en overzichtelijkheid bij het plaatsen van PHP-scripts.

Triloxigen 26-03-2003 22:02

op GoT is dit ook..
het zou idd erg handig zijn :p

moet te doen zijn, gewoon eht aantal keer \n tellen :D

TouchOfDarkness 26-03-2003 22:03

ben ik ook voor :)

kan je de code wel leveren, alleen ik moet de onze nog ff wat perfectioneren.

dystopia 26-03-2003 22:14

Doe dan ook 'even' C, HTML, Perl, Bash...
Alsof PHP zo belangrijk is.. en die anderen niet. Wmb. hoeft dat niet voor S&M, tenzij je voor een arsenaal aan andere programmeertalen ook die mogelijkheid biedt.

Een copy/paste in een fatsoenlijke editor met highlighting levert je overigens hetzelfde effect op.

TouchOfDarkness 26-03-2003 22:32

Citaat:

dystopia schreef op 26-03-2003 @ 23:14:
Doe dan ook 'even' C, HTML, Perl, Bash...
Alsof PHP zo belangrijk is.. en die anderen niet. Wmb. hoeft dat niet voor S&M, tenzij je voor een arsenaal aan andere programmeertalen ook die mogelijkheid biedt.

Een copy/paste in een fatsoenlijke editor met highlighting levert je overigens hetzelfde effect op.

Ik neem aan dat het hier over de vBB tag [PHP] gaat, waarin je syntax highlighting kan zetten. Dus jouw argument dat het meteen voor meerdere talen moet, en dat het daarom niet zou kunnen, snijdt geen hout...en imho draait dit wel bij aan de functionaliteit van dit forum.

Koen 27-03-2003 06:45

Tja.. het zou wel handig kúnnen zijn, maar IMHO is 't meer '1 van de features die Jon ooit nog wel eens zou willen doen en die daarom wel op de wachtlijst gezet zou kunnen worden'.

Het is wel leuk, maar ik weet niet of Jon 't ziet als iets met dusdanig hoge prioriteit dat ie ook onmiddelijk dat wil fixen. Maar goed, ik kan niet voor 'm spreken, dat is alleen wat ik vermoed. :)

TouchOfDarkness 27-03-2003 07:21

Citaat:

Koen schreef op 27-03-2003 @ 07:45:
Tja.. het zou wel handig kúnnen zijn, maar IMHO is 't meer '1 van de features die Jon ooit nog wel eens zou willen doen en die daarom wel op de wachtlijst gezet zou kunnen worden'.

Het is wel leuk, maar ik weet niet of Jon 't ziet als iets met dusdanig hoge prioriteit dat ie ook onmiddelijk dat wil fixen. Maar goed, ik kan niet voor 'm spreken, dat is alleen wat ik vermoed. :)

och als ie het nodig heeft, de code die wij op webdeveloping.nl gebruiken, kan ik hem wel geven, is even een functie vervangen, is op zich niet zo heel veel moeite :)

maar goed, wel begrijpelijk dat ie het doet als ie er zin/tijd voor heeft :p

Martin 27-03-2003 07:50

Hmm, de code staat al pasklaar op hun forum :-)

*klik*

Triloxigen 27-03-2003 08:18

Citaat:

dystopia schreef op 26-03-2003 @ 23:14:
Doe dan ook 'even' C, HTML, Perl, Bash...
Alsof PHP zo belangrijk is.. en die anderen niet. Wmb. hoeft dat niet voor S&M, tenzij je voor een arsenaal aan andere programmeertalen ook die mogelijkheid biedt.

Een copy/paste in een fatsoenlijke editor met highlighting levert je overigens hetzelfde effect op.

er is een functie in php die colorhighligthing voor je doet :)
je hoeft alllen regelnummers aan te geven..

TouchOfDarkness 27-03-2003 15:53

Citaat:

Martin schreef op 27-03-2003 @ 08:50:
Hmm, de code staat al pasklaar op hun forum :-)

*klik*

deze gebruiken wij nu:

PHP-code:

function phphighlite($code) {
    //PHP 4 only
    if (floor(phpversion())<4) {
        $buffer = $code;
    } else {
        $code = str_replace("<br>", "", $code);
        $code = str_replace("<br />", "", $code);
        $code = str_replace("&gt;", ">", $code);
        $code = str_replace("&lt;", "<", $code);
        
        $code = str_replace("&amp;", "&", $code);
        $code = str_replace('$', '\$', $code);
        $code = str_replace('\n', '\\\\n', $code);
        $code = str_replace('\r', '\\\\r', $code);
        $code = str_replace('\t', '\\\\t', $code);
        
        $code = stripslashes($code);
        
        if (!strpos($code,"<?") && substr($code,0,2) != "<?") {
            $code = "<?\n".trim($code)."\n?>";
            $addedtags = 1;
        }
        
        ob_start();
        $oldlevel=error_reporting(0);
        highlight_string(trim($code));
        error_reporting($oldlevel);
        $buffer = ob_get_contents();
        ob_end_clean();
        
        if ($addedtags) {
            $openingpos = strpos($buffer,'&lt;?');
            $closingpos = strrpos($buffer, '?');
            $buffer = trim(substr($buffer, 0, $openingpos) . substr($buffer, $openingpos+5, $closingpos-($openingpos+5)) . substr($buffer, $closingpos+5));
        }
        $buffer = str_replace("&quot;", "\"", $buffer);
        $buffer = preg_replace("#(<br />)(];)#mU", "\\2", $buffer);
        $buffer = preg_replace("/<font color=\"(#)?[0-9a-fA-F]+\"><br \/><\/font>/Ums", "", $buffer);
        
        $newline_count = count(explode("<br />", $buffer));
        
        $returntable = "<table cellpadding=\"0\" cellspacing=\0\" style=\"border: 1px solid #000000;\" width=\"100%\">\n";
        $returntable .= "<tr valign=\"top\">\n<td align=\"center\" bgcolor=\"#D9D9D9\" width=\"25\" style=\"font-family: Courier; font-size: 12px; line-height: 12px;\" nowrap>\n";
        for($i = 1; $i <= $newline_count; $i++) {
            $returntable .= "$i<br />\n";
        }
        $returntable .= "</td>\n";
        $returntable .= "<td bgcolor=\"#FFFFFF\" style=\"font-family: Courier New; font-size: 12px; padding-left: 3px; padding-top: 0px; padding-right: 1px; line-height: 12px;\" nowrap>$buffer</td>\n";
        $returntable .= "</tr>\n</table>";
  }
  return "</normalfont><blockquote><smallfont>PHP:</smallfont>$returntable</blockquote><normalfont>";
}


Koen 27-03-2003 17:45

Offtopic:

Citaat:

function phphighlite($code) {
Zeg me alsjeblieft dat dat een typo is :p

TouchOfDarkness 27-03-2003 19:53

Citaat:

Koen schreef op 27-03-2003 @ 18:45:
Offtopic:



Zeg me alsjeblieft dat dat een typo is :p

zo heet het in vbb, kan er ook niks aan doen :p

Triloxigen 27-03-2003 20:26

Citaat:

Koen schreef op 27-03-2003 @ 18:45:
Offtopic:



Zeg me alsjeblieft dat dat een typo is :p

:D:D:D:D

Martin 23-02-2004 12:37

Ik doe nog maar eens een poging om deze feature aan te halen, hij lijkt mij namelijk érg nuttig.

Mijn vraag nogmaals: Is er toekomst voor deze feature?

Triloxigen 24-02-2004 22:21

Citaat:

Martin schreef op 23-02-2004 @ 13:37:
Ik doe nog maar eens een poging om deze feature aan te halen, hij lijkt mij namelijk érg nuttig.

Mijn vraag nogmaals: Is er toekomst voor deze feature?

Daarbij wil ik mij toevoegen aan deze petitie :)

Fade of Light 25-02-2004 00:34

present, ik voeg me toe aan het PHP-stormfront :cool: :D

Martin 25-02-2004 06:27

Citaat:

Fade of Light schreef op 25-02-2004 @ 01:34:
present, ik voeg me toe aan het PHP-stormfront :cool: :D
:D

Dr HenDre 02-03-2004 14:26

Ik ook, maar ik wil nog effe toevoegen dat áls het verandert, dat ook meteen de andere talen gedaanmoeten worden. En ik denk in de volgorde:
PHP
HTML
JS
C/C++
Java
Pascal/Delphi
ASP
(Perl)

Dus wat bovenaan staan moet als eerst, en dan de volgende. Ik noem de volgorde uitgaande van de gebruik van de taal

Screaming Slave 02-03-2004 14:47

[pascal] (y)

Triloxigen 29-03-2004 22:30

Citaat:

Dr HenDre schreef op 02-03-2004 @ 15:26:
Ik ook, maar ik wil nog effe toevoegen dat áls het verandert, dat ook meteen de andere talen gedaanmoeten worden. En ik denk in de volgorde:
PHP
HTML
JS
C/C++
Java
Pascal/Delphi
ASP
(Perl)

Dus wat bovenaan staan moet als eerst, en dan de volgende. Ik noem de volgorde uitgaande van de gebruik van de taal

PHP heeft een ingebouwde syntax highlighting :|

Denk je echt dat Jon dat zelf had gemaakt, alle functies en properties met een kleurtje handmatig in een file zet :|

Chimera 30-03-2004 09:35

Citaat:

Screaming Slave schreef op 02-03-2004 @ 15:47:
[pascal] (y)
Nee. [ code=pascal][/code]

Harrie 30-03-2004 11:15

http://forum.scholieren.com/showthre...hreadid=790109

code is niet optimaal dus

Manuzhai 30-03-2004 11:21

Citaat:

Harrie schreef op 30-03-2004 @ 12:15:
code is niet optimaal dus
Daar heb ik (nog) niets mee gedaan.

12Trix 11-05-2004 21:45

Citaat:

Dr HenDre schreef op 02-03-2004 @ 15:26 :
Ik ook, maar ik wil nog effe toevoegen dat áls het verandert, dat ook meteen de andere talen gedaanmoeten worden. En ik denk in de volgorde:
PHP
HTML
JS
C/C++
Java
Pascal/Delphi
ASP
(Perl)

Dus wat bovenaan staan moet als eerst, en dan de volgende. Ik noem de volgorde uitgaande van de gebruik van de taal

Nog leuker: code toevoegen aan het forum om de genoemde talen direct uit te voeren wanneer het bekeken wordt :D :P

Nee, maar ff serieus: het forum uitbreiden met syntax highlighting van allerhande talen lijkt me nogal tijdrovend... :) En inderdaad, de syntax highlighting bij PHP daar heeft PHP zelf een functie voor.

Triloxigen 12-05-2004 09:05

Of je loopt even niet zo irritant topics te uppen :|

Manuzhai 12-05-2004 12:04

Citaat:

********** schreef op 12-05-2004 @ 10:05 :
Of je loopt even niet zo irritant topics te uppen :|
Heb m gisteravond al een PM gestuurd.

Fade of Light 12-05-2004 17:47

Naja, kan ik ten minste mooi ff zeggen dat ik er tevreden over ben, zonder dat ik de upper ben ;)

Triloxigen 13-05-2004 11:23

ok, ik ben er erg tevreden over..
Maar... (jaja)

Is het niet een idee een link eronder te zetten met popup dat je wel alle code en onder elkaar ziet?
Dit kan namelijk weleens handig zijn..

Manuzhai 13-05-2004 13:18

Als je er even over nadenkt hoe een forum in elkaar zit zul je inzien dat dat nogal lastig te realiseren is.

Triloxigen 13-05-2004 17:20

Citaat:

Manuzhai schreef op 13-05-2004 @ 14:18 :
Als je er even over nadenkt hoe een forum in elkaar zit zul je inzien dat dat nogal lastig te realiseren is.
Als je iemand blokkeert, kun je op een link klikken zodat je een poipup krijgt..
Gewoon die gebruiken en beetje ombouwen :)

M@rco 15-05-2004 13:43

Citaat:

Manuzhai schreef op 13-05-2004 @ 14:18 :
Als je er even over nadenkt hoe een forum in elkaar zit zul je inzien dat dat nogal lastig te realiseren is.
Het moet toch wel te doen zijn... gewoon de post uit de database selecteren en alles weergeven wat tussen [php]-tags staan.

Maar ja, dan nog zie ik het nut er niet echt van in. Ik bedoel, kopieer en plak de code dan gewoon in Notepad als je het in een apart venster wil zien :p

Manuzhai 15-05-2004 15:38

Of gebruik de PHP pastebin.


Alle tijden zijn GMT +1. Het is nu 18:04.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.