Preg_replace werkt niet goed
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$smileys=array(
'#:D#' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:angel:#' => '<img src="../images/smileys/angel.gif" alt="Angel">',
'#:ballon:#' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
'#:ban:#' => '<img src="../images/smileys/ban.gif" alt="Ban">',
'#:batman:#' => '<img src="../images/smileys/batman.gif" alt="Batman">',
'#:=#' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
'#:klappen:#' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
'#:cowboy:#' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:666:#' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
'#:duivel:#' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
'#:...:#' => '<img src="../images/smileys/dots.gif" alt="...">',
'#:o#' => '<img src="../images/smileys/eek.gif" alt=":o">',
'#:eek:#' => '<img src="../images/smileys/eek.gif" alt=":o">',
'#:fuck:#' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:guns:#' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
$_GET["text"]=preg_replace(array_keys($smileys), array_values($smileys), $_GET["text"]);
?>
$smileys=array(
'#:D#' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:angel:#' => '<img src="../images/smileys/angel.gif" alt="Angel">',
'#:ballon:#' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
'#:ban:#' => '<img src="../images/smileys/ban.gif" alt="Ban">',
'#:batman:#' => '<img src="../images/smileys/batman.gif" alt="Batman">',
'#:=#' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
'#:klappen:#' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
'#:cowboy:#' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:666:#' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
'#:duivel:#' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
'#:...:#' => '<img src="../images/smileys/dots.gif" alt="...">',
'#:o#' => '<img src="../images/smileys/eek.gif" alt=":o">',
'#:eek:#' => '<img src="../images/smileys/eek.gif" alt=":o">',
'#:fuck:#' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
'#:alien:#' => '<img src="../images/smileys/alien.gif" alt="Alien">',
'#:guns:#' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
$_GET["text"]=preg_replace(array_keys($smileys), array_values($smileys), $_GET["text"]);
?>
Het probleem: als $_GET["text"] #:D bevat, word er niets meer weergeven na #:D.
(#:D is ook niet zichtbaar).
Hoe kan ik dit probleem oplossen ?
Gewijzigd op 01/01/1970 01:00:00 door /home/joost
Code (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
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
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel">',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban">',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman">',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':...:' => '<img src="../images/smileys/dots.gif" alt="...">',
':o' => '<img src="../images/smileys/eek.gif" alt=":o">',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o">',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
$text = 'Hallo :D';
$text = str_replace (array_keys ($smileys), array_values ($smileys), $text);
echo '<pre>' . print_r ($text, true) . '</pre>';
?>
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel">',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban">',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman">',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':...:' => '<img src="../images/smileys/dots.gif" alt="...">',
':o' => '<img src="../images/smileys/eek.gif" alt=":o">',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o">',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
$text = 'Hallo :D';
$text = str_replace (array_keys ($smileys), array_values ($smileys), $text);
echo '<pre>' . print_r ($text, true) . '</pre>';
?>
str_replace gaat er bij PHP6 toch uit ??
/home/joost schreef op 06.08.2009 19:46:
str_replace gaat er bij PHP6 toch uit ??
Waar heb je dat gelezen?
Gewijzigd op 01/01/1970 01:00:00 door /home/joost
Ik denk niet dat str_replace zal verdwijnen. Bovendien is hij waarschijnlijk nog een stuk sneller ook dan preg_replace, omdat er geen regexen geëvalueerd hoeven te worden. En graag gedaan natuurlijk ;-)
Script:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
$("textarea#toon_preview").keyup(function() {
var content = document.getElementById('toon_preview').value;
$.ajax({
type: "GET",
url: "pages/ubb.php?smileys=enabled&ubb=enabled&text="+content,
success: function(preview) {
$('#preview_content').html('');
$('#preview_content').append(preview);
}
});
});
var content = document.getElementById('toon_preview').value;
$.ajax({
type: "GET",
url: "pages/ubb.php?smileys=enabled&ubb=enabled&text="+content,
success: function(preview) {
$('#preview_content').html('');
$('#preview_content').append(preview);
}
});
});
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
dus moet dat veranderen naar POST ?
Probeer het eens.
Code (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
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
<?php
$text=$_POST["text"];
if (isset($_POST["smileys"]) && $_POST["smileys"] == "enabled") {
if (isset($text)) {
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel">',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban">',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman">',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':...:' => '<img src="../images/smileys/dots.gif" alt="...">',
':o' => '<img src="../images/smileys/eek.gif" alt=":o">',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o">',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
//$text=preg_replace(array_keys($smileys), array_values($smileys), $text);
$text = str_replace(array_keys($smileys), array_values($smileys), $text);
echo 'Blaat';
}
}
echo $text;
?>
$text=$_POST["text"];
if (isset($_POST["smileys"]) && $_POST["smileys"] == "enabled") {
if (isset($text)) {
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel">',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon">',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban">',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman">',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen">',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje">',
':...:' => '<img src="../images/smileys/dots.gif" alt="...">',
':o' => '<img src="../images/smileys/eek.gif" alt=":o">',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o">',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck">',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien">',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns">'
);
//$text=preg_replace(array_keys($smileys), array_values($smileys), $text);
$text = str_replace(array_keys($smileys), array_values($smileys), $text);
echo 'Blaat';
}
}
echo $text;
?>
Blaat word wel geecho'ed ;)
Edit::
Volgens firebug krijg ik gewoon :D terug ipv een <img tag
Edit2::
Probleem opgelost, de variabel werd overset door $_POST["text"] zodat alles weer normaal werd gezet :P
Edit3::
Heb nu het volgende script: Iemand nog commentaar, wat kan er evt beter ? :P
Code (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
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
<?php
$text=$_POST["text"];
$text=str_replace('<', '<', $text);
$text=str_replace('>', '>', $text);
if (isset($_POST["smileys"]) && $_POST["smileys"] == "enabled") {
if (isset($text)) {
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel" />',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon" />',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban" />',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman" />',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen" />',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen" />',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje" />',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje" />',
':...:' => '<img src="../images/smileys/dots.gif" alt="..." />',
':o' => '<img src="../images/smileys/eek.gif" alt=":o" />',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o" />',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns" />'
);
$text = str_replace(array_keys($smileys), array_values($smileys), $text);
}
}
if (isset($_POST["ubb"]) && $_POST["ubb"] == "enabled") {
if (isset($text)) {
$ubb = array(
'#\[b\](.*?)\[/b\]#si' => '<b>\\1</b>',
'#\[u\](.*?)\[/u\]#si' => '<u>\\1</u>',
'#\[i\](.*?)\[/i\]#si' => '<i>\\1</i>',
'#\[s\](.*?)\[/s\]#si' => '<s>\\1</s>'
);
$text=preg_replace(array_keys($ubb), array_values($ubb), $text);
}
}
$text=str_replace(' ', ' ', $text);
echo stripslashes(nl2br($text));
?>
$text=$_POST["text"];
$text=str_replace('<', '<', $text);
$text=str_replace('>', '>', $text);
if (isset($_POST["smileys"]) && $_POST["smileys"] == "enabled") {
if (isset($text)) {
$smileys=array(
':D' => '<img src="../images/smileys/grin.gif" alt="Grijns" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':angel:' => '<img src="../images/smileys/angel.gif" alt="Angel" />',
':ballon:' => '<img src="../images/smileys/balloon.gif" alt="Ballon" />',
':ban:' => '<img src="../images/smileys/ban.gif" alt="Ban" />',
':batman:' => '<img src="../images/smileys/batman.gif" alt="Batman" />',
':=' => '<img src="../images/smileys/clap.gif" alt="Klappen" />',
':klappen:' => '<img src="../images/smileys/clap.gif" alt="Klappen" />',
':cowboy:' => '<img src="../images/smileys/cowboy.gif" alt="Cowboy" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':666:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje" />',
':duivel:' => '<img src="../images/smileys/devil.gif" alt="Duiveltje" />',
':...:' => '<img src="../images/smileys/dots.gif" alt="..." />',
':o' => '<img src="../images/smileys/eek.gif" alt=":o" />',
':eek:' => '<img src="../images/smileys/eek.gif" alt=":o" />',
':fuck:' => '<img src="../images/smileys/fuck.jpg" alt="Fuck" />',
':alien:' => '<img src="../images/smileys/alien.gif" alt="Alien" />',
':guns:' => '<img src="../images/smileys/guns.gif" alt="Guns" />'
);
$text = str_replace(array_keys($smileys), array_values($smileys), $text);
}
}
if (isset($_POST["ubb"]) && $_POST["ubb"] == "enabled") {
if (isset($text)) {
$ubb = array(
'#\[b\](.*?)\[/b\]#si' => '<b>\\1</b>',
'#\[u\](.*?)\[/u\]#si' => '<u>\\1</u>',
'#\[i\](.*?)\[/i\]#si' => '<i>\\1</i>',
'#\[s\](.*?)\[/s\]#si' => '<s>\\1</s>'
);
$text=preg_replace(array_keys($ubb), array_values($ubb), $text);
}
}
$text=str_replace(' ', ' ', $text);
echo stripslashes(nl2br($text));
?>
Gewijzigd op 01/01/1970 01:00:00 door /home/joost
@ /home/joost: wat bedoel je precies?