Toon posts:

code highlight en automatische links

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

Verwijderd

Topicstarter
Hallo allemaal,

Ik wil het volgende stuk code gebruiken om alles wat tussen <? en ?> staat een kleurtje te geven en om van url's automatisch een link te maken. als ik het gedeelte wat de links maakt weghaal werkt alles goed maar samen wordt het een puinhoop wie kan mij vertellen wat er fout gaat? alvast bedankt, Patrick
PHP:
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
56
57
58
59
60
61
62
63
64
65
<? 
function phphighlite($code) { 
  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,"<?") and substr($code,0,2)!="<?") { 
            $code="<?\n".trim($code)."\n?>"; 
            $addedtags=1; 
        } 
        ob_start(); 
        $oldlevel=error_reporting(0); 
        highlight_string($code); 
        error_reporting($oldlevel); 
        $buffer = ob_get_contents(); 
        ob_end_clean(); 
        if ($addedtags) { 
          $openingpos = strpos($buffer,'<?'); 
          $closingpos = strrpos($buffer, '?'); 
          $buffer=substr($buffer, 0, $openingpos).substr($buffer, $openingpos+5, $closingpos-($openingpos+5)).substr($buffer, $closingpos+5); 
        } 
        $buffer = str_replace("&quot;", "\"", $buffer); 
  } 

  return $buffer; 
} 
$text= phphighlite($row_topic['bericht']); 
$text = preg_replace( 
    '/ 
        (?<! 
            \S 
        ) 
        (?: 
            (https?:\/\/|ftp:\/\/|news:|mailto:|telnet:) 
        | 
            (www\.) 
        ) 
        ( 
            \S+ 
        ) 
    /ixe', 

    ' 
    "<a href=\"". 
    (strlen("\1") > 0 ? "\1" : "http://"). 
    "\2\3\">\1\2\3</a>" 
    ', 

    $row_topic['bericht'] 
    ); 

echo $text; 
?>

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Sorry hoor, maar 'wie kan er mij vertellen wat er fout gaat', duidt er dus gewoon op dat je je code zelf eerst eens moet debuggen.
Als je wilt programmeren, dan moet je ook zelf willen en kunnen debuggen.

P&W is een forum waar we je best wel willen helpen, maar dat gaat niet op deze manier. Het is niet de bedoeling dat je hier een topic kunt maken waarin je 65 lijnen code dumpt, en dan even vermeldt of er iemand kan vinden waar het fout gaat.
Dat duidt er nl. op dat je zelf nog niet gedebugged hebt. Bekijk in de P&W FAQ eens het topic over debuggen

Succes.
Debugging is the cornerstone of being a programmer. The first meaning of the verb to debug is to
remove errors, but the meaning that really matters is to see into the execution of a program by examining
it. A programmer that cannot debug effectively is blind.

[ Voor 25% gewijzigd door whoami op 28-01-2004 12:25 ]

https://fgheysels.github.io/


Dit topic is gesloten.