Dan was het denk ik de spatie.quote:Op zaterdag 12 maart 2005 23:20 schreef SuperRembo het volgende:
[..]
In m'n testformpje doet ie dat zonder problemen.
Een url zonder tag moet beginnen met www of http:// en en moet een spatie na staan.
Nee als er niets achter staat dan wordt ie helemaal niet geparst. Je kan er zelf ff een spatie achter plakken en achteraf trimmen. Zal er nog eens naar kijken.quote:Op zaterdag 12 maart 2005 23:24 schreef Swetsenegger het volgende:
[..]
Dan was het denk ik de spatie.
Wat gebeurt er dan als hij helemaal aan het eind van de string staat?
Het is toch zeker spatie OF einde string?
Is gewoon 'einde string' niet handiger? In tekst mag je er wel vanuitgaan dat er een spatie komt. Of een punt (welke hij mee parst zag ik, mits er na die punt een spatie komt)quote:Op zaterdag 12 maart 2005 23:27 schreef SuperRembo het volgende:
[..]
Nee als er niets achter staat dan wordt ie helemaal niet geparst. Je kan er zelf ff een spatie achter plakken en achteraf trimmen. Zal er nog eens naar kijken.
Ja die is naar.quote:
1 2 3 4 | '#(?<!\[url=)(https?://.*?)(?=\s|$)#i' => '<a href="\1">\1</a>', '#(?<!\[url=)(www\..*?)(?=\s|$)#i' => '<a href="http://\1">\1</a>', '#\[url=(https?://.*?)\](.*?)\[/url\]#i' => '<a href="\1">\2</a>', '#\[url=(.*?)\](.*?)\[/url\]#i' => '<a href="http://\1">\2</a>', |
een keer zonder http en een keer met zeker?quote:Op zaterdag 12 maart 2005 23:49 schreef SuperRembo het volgende:
Kut. Ik zie nu dat 't mis gaat met http://www.foo.com. Die wordt dubbel geparsed.
Ok, dus de spatie is gefixed (was eigenlijk alleen een porbleem bij einde string)quote:Op zondag 13 maart 2005 00:10 schreef SuperRembo het volgende:
Dat laatste heb ik gefixed http://superrembo.com/test/ubblink.php
Die punt komt later misschien nog een keer.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | $regexps = array( // http://foo.net => [url=http://foo.net]http://foo.net[/url] '#(?<!\[url=)(http://.*?)(?=\s|$)#i' => '[url=\1]\1[/url]', // www.foo.net => [url=www.foo.net]http://www.foo.net[/url] '#(?<!\[url=)(?<!http://)(www\..*?)(?=\s|$)#i' => '[url=http://\1]\1[/url]', // [url=http://foo.net]Foo[/url] => <a href="http://foo.net">Foo</a> '#\[url=(https?://.*?)\](.*?)\[/url\]#i' => '<a href="\1">\2</a>', // [url=foo.net]Foo[/url] => <a href="http://foo.net">Foo</a> '#\[url=(.*?)\](.*?)\[/url\]#i' => '<a href="http://\1">\2</a>', ); foreach ($regexps as $search=>$replace) { $text = preg_replace($search, $replace, $text); } |
-edit-quote:
Jee zegquote:
1 | '#(?<!\[url=)(http://.*?)(?=\s|$|"\.\s"|"\.$")#i' => '[url=\1]\1[/url]', |
quote:Op zondag 13 maart 2005 11:35 schreef SuperRembo het volgende:
[..]
Jee zegGeen syntax highlighting en meteen lost
Dit kan wel.quote:Op zondag 13 maart 2005 12:02 schreef Swetsenegger het volgende:
[ code verwijderd ]
Is dit 'm niet? (geen tijd om te testen)
1 2 3 4 5 6 7 8 9 10 11 12 13 | $regexps = array( // http://foo.net => [url=http://foo.net]http://foo.net[/url] '#(?<!\[url=)(http://.*?)(?=[.,?:;()<>]*(\s|$))#i' => '[url=\1]\1[/url]', // www.foo.net => [url=www.foo.net]http://www.foo.net[/url] '#(?<!\[url=)(?<!http://)(www\..*?)(?=[.,?:;()<>]*(\s|$))#i' => '[url=http://\1]\1[/url]', // [url=http://foo.net]Foo[/url] => <a href="http://foo.net">Foo</a> '#\[url=(https?://.*?)\](.*?)\[/url\]#i' => '<a href="\1">\2</a>', // [url=foo.net]Foo[/url] => <a href="http://foo.net">Foo</a> '#\[url=(.*?)\](.*?)\[/url\]#i' => '<a href="http://\1">\2</a>', ); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | $regexps = array( // http://foo.net => [url=http://foo.net]http://foo.net[/url] \'#(?<!\\[url=)(http://.*?)(?=\\s|$|(\\.\\s)+|(\\.$)+)#i\' => \'[url=\\1]\\1[/url]\', // www.foo.net => [url=www.foo.net]http://www.foo.net[/url] \'#(?<!\\[url=)(?<!http://)(www\\..*?)(?=\\s|$|(\\.\\s)+|(\\.$)+)#i\' => \'[url=http://\\1]\\1[/url]\', // [url=http://foo.net]Foo[/url] => <a href=\"http://foo.net\">Foo</a> \'#\\[url=(https?://.*?)\\](.*?)\\[/url\\]#i\' => \'<a href=\"\\1\">\\2</a>\', // [url=foo.net]Foo[/url] => <a href=\"http://foo.net\">Foo</a> \'#\\[url=(.*?)\\](.*?)\\[/url\\]#i\' => \'<a href=\"http://\\1\">\\2</a>\', ); foreach ($regexps as $search=>$replace) { $text = preg_replace($search, $replace, $text); } |
1 | (?=\\\\s|$|(\\\\.\\\\s)+|(\\\\.$)+) |
1 | (?=[.]?(\\\\s|$)) |
1 | (?=[.,?:;()<>]*(\\\\s|$)) |
LOL, ja magic quotes moeten ze er direct uitslopen.quote:Op zondag 13 maart 2005 17:58 schreef SuperRembo het volgende:
O kut, die backslashes komen door een foute instelling van de server.Heeft breuls weer lopen kloten
Magic quotes zullen wel aan staan denk ik. Verschikkelijke klote feature van php/mysql.
1 2 3 4 5 6 7 8 9 10 | SELECT h.hits_timestamp, n.nummer_id, n.nummer_titel, a.artiest_id, a.artiest_naam, b.album_id, b.album_titel, u.user_id, u.user_name FROM hits h, nummer n, artiest a, album b, user u WHERE n.nummer_id = h.hits_nummer_id AND a.artiest_id = n.nummer_artiest_id AND b.album_id = n.nummer_album_id AND u.user_id = h.hits_user_id AND u.user_name LIKE '".$var['user_name']."' ORDER BY h.hits_id DESC LIMIT 0,25 |
1 2 3 4 5 6 7 | SELECT COUNT(a.artiest_id), a.artiest_id, a.artiest_naam, u.user_id, u.user_name FROM hits h, nummer n, artiest a, user u WHERE n.nummer_id = h.hits_nummer_id AND a.artiest_id = n.nummer_artiest_id AND u.user_id = h.hits_user_id AND u.user_name LIKE '".$var['user_name']."' GROUP BY u.user_id |
1 2 3 4 5 6 7 8 9 | SELECT COUNT(h.hits_nummer_id) AS artnum, a.artiest_id, a.artiest_naam, u.user_id FROM hits h, nummer n, artiest a, user u WHERE n.nummer_id = h.hits_nummer_id AND a.artiest_id = n.nummer_artiest_id AND u.user_id = h.hits_user_id AND u.user_id = '".$var['user_id']."' GROUP BY a.artiest_naam ORDER BY artnum DESC LIMIT 0, 25 |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |