Ik wil juist dat óf dat het onderwerp de naam van het object is waar ze net vandaan kwamen óf dat ze zelf een vraag als ondwerp kunnen invoeren.quote:Op zaterdag 12 maart 2005 13:24 schreef ikke_ook het volgende:
Kun je niet beter een checkbox gebruiken ipv een radiobutton?Je vraag klinkt alsof je dat wil namelijk
[ code verwijderd ]
Zoiets?
Zou idd ook kunnen ja! Maar is het überhaupt mogenlijk? Want hoe zorg je dat als een checkbox is aangevinkt de value van de textbox wordt verzonden...quote:Op zaterdag 12 maart 2005 14:33 schreef Roönaän het volgende:
Je kan toch gewoon die textarea prefillen en als ze iets anders willen, doen ze dat wel toch?
Die checkbox valt dan toch weg?quote:Op zaterdag 12 maart 2005 14:36 schreef gieling het volgende:
[..]
Zou idd ook kunnen ja! Maar is het überhaupt mogenlijk? Want hoe zorg je dat als een checkbox is aangevinkt de value van de textbox wordt verzonden...
Ja maar los daarvan: zou het kunnen?quote:
Ehh.. ik snap het niet helemaal, je bedoelt dus dat ik jou stukje code 2x moet doen 1x voor textbox en 1x keer voor de object_naam waar de bezoeker net vandaan kwam?quote:Op zaterdag 12 maart 2005 14:40 schreef ikke_ook het volgende:
Dat heb ik daarboven toch neer gezet?
als je al die dingen in 1 form zet, dan komen al die waardes in je _POST array terecht...
En dan kun je toch controleren of die checkbox aangevinkt is en dan de tekst meesturen?
Als je er echt "\n\r" had staan dan was dat fout. "\r\n" zou wel moeten werken.quote:Op zaterdag 12 maart 2005 16:35 schreef ikke_ook het volgende:
Ik heb mijn mail functie ook aan de praat SuperR (en de rest die er over nadacht) Als je de header maakt met aan ieder eind van de regel \n ipv \n\r dan werkt hij wel....
1 2 3 4 5 6 7 8 9 10 11 12 | function makeRandomPassword() { $str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $i = 0; while ($i <= 7) { $num = rand(0,61); $tmp = substr($str, $num, 1); $pass .= $tmp; $i++; } return $pass; } |
Als je een formpje als deze hebt:quote:Op zaterdag 12 maart 2005 16:13 schreef gieling het volgende:
[..]
Ja maar los daarvan: zou het kunnen?
[..]
Ehh.. ik snap het niet helemaal, je bedoelt dus dat ik jou stukje code 2x moet doen 1x voor textbox en 1x keer voor de object_naam waar de bezoeker net vandaan kwam?
1 2 3 4 5 6 7 | <form action="formhandler.php" method="post"> <input type="radio" name="sel_titel" value="een"> Titel: <input type="text" name="titel1"><br/> <input type="radio" name="sel_titel" value="twee"> <input type="text" name="titel2" value="Naam van object waar je net vandaan komt"><br/> <input type="submit"> </form> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <?php if(!empty($_POST)) { switch($_POST['sel_titel']) { case "een": $titel = $_POST['titel1']; break; case "twee": $titel = $_POST['titel2']; break; default: $titel = ""; break; } mail($to, $titel, $inhoud, $headers); } ?> |
Getest, de gezamelijk Fok URL parser doet het beterquote:Op zaterdag 12 maart 2005 09:53 schreef SuperRembo het volgende:
[..]
JajajaProbeer ze eens.
Input:
[ code verwijderd ]
Output:
[ code verwijderd ]
1 2 3 | $text = preg_replace("/([A-Za-z0-9._-]+@[-A-Za-z0-9]+(\.[-A-Za-z0-9]+)*)/i",'<a href="mailto:\1">\1</a>',$text); $text = preg_replace("/[^\[url=http:\/\/](www(\.[-A-Za-z0-9]+)+\.[A-Za-z]{2,4}(\/\~?[-A-Za-z0-9\.\/?%&=#] $text = preg_replace('/\[url=(.+)\](.+)\[\/url\]/', '<a href="\1" target="_new">\2</a>', $text ); |
Huhquote:Op zaterdag 12 maart 2005 21:14 schreef Swetsenegger het volgende:
[..]
Getest, de gezamelijk Fok URL parser doet het beter
Die regexps zijn te ingewikkeld (er zitten overbodige en onhandige constructies in).quote:[ code verwijderd ]
parst zo'n beetje alles, zelfs deze: www.nl.pwc.com/extweb/Bn/Taxnews.nsf/Public/WI06212 waar fok van over z'n nek gaat
De helft wordt niet goed geparsed en zodra ik een 'kale' url en een '[ url=' url in dezelfde tekst heb verneukt hij het compleet.quote:Op zaterdag 12 maart 2005 22:31 schreef SuperRembo het volgende:
[..]
HuhWat gaat er dan mis met mijn regexps?
Nee hoorquote:Die regexps zijn te ingewikkeld (er zitten overbodige en onhandige constructies in).
Ze halen spaties weg voor een link.
quote:En ik kan er geen link mee maken naar een .museum domein.
Nee....quote:En het gaat mis met 2 links op 1 regel.
Ja?quote:Op zaterdag 12 maart 2005 23:10 schreef SuperRembo het volgende:
Kijk en vergelijk
1e output is van mijn regexps, 2e output is van jouw regexps. Ik heb alleen voor de duidelijkheid de target="_new" weggehaald.
In m'n testformpje doet ie dat zonder problemen.quote:Op zaterdag 12 maart 2005 23:15 schreef Swetsenegger het volgende:
Ik heb graag een betere parser, en die van jou doet het erg goed, behalve dan die complete verneuking met die lange url, dat is echt killing
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 |
afbeeldingen wil je op zich niet in een DB zetten, tenzij je er hele goede redenen voor hebt. Wat je imho beter kan doen is zorgen dat de images een unique filename hebben en de filename opslaan in de database.quote:Op zondag 13 maart 2005 20:10 schreef Swetsenegger het volgende:
Ok, dillema.
Ik ben een site aan het bouwen voor een makelaar. Hierop moet hij natuurlijk nieuwe woningen kunnen plaatsen.
Per woning komen er 5 foto's in 2 formaten (thumb en iets groter)
Ik ga er in ieder geval 2 tabellen van maken, 1 met de omschrijving, adres, prijs etc van de woning en dan een tabel foto's.
Maar... hoe ga ik het doen. upload ik de originele foto's, zet ik die in een BLOB (1 foto per row) en laat ik php resizen bij het uitlezen van de tabel...
voordeel: lekker snel 5 foto's uploaden.
nadeel, trager aan de zichtbare kant.
OF upload ik de foto's, resize ik in twee formaten en zet ik deze twee formaten per row in twee blob's (1 foto per row in 2 sizes).
voordeel, snelheidswinst aan de zichtbare kant
nadeel, vertraging bij uploaden.
OF resize ik de foto's en maak 10 blobs per row
voordeel snelheidswinst zichtbare kant en eenvoudiger scripten voor de zichtbarekant
nadeel, upload proces grote tabellen
vergeet ik iets?
Aangezien er heel veel verloop is, is het een stuk eenvoudiger om ze in DB te zetten dan bij elke wijziging EN een record te verwijderen EN 10 afbeeldingen te unlinken.quote:Op maandag 14 maart 2005 07:56 schreef rickmans het volgende:
[..]
afbeeldingen wil je op zich niet in een DB zetten, tenzij je er hele goede redenen voor hebt. Wat je imho beter kan doen is zorgen dat de images een unique filename hebben en de filename opslaan in de database.
Op zich is het deleten van een record en het deleten van een aantal images niet echt de moeite, zeker niet als je dit in een kleine procedure/ functie heb vastgelegd, dan is het een kwestie van eenmalig schrijven en vervolgens netjes aanroepen.quote:One of the classic "right" applications where images should be stored in the database is when the filesystem overhead outweighs the database query overhead.
We built an image database for icons and "smilies" and other very small images. This site gets about 2,000,000 requests a day for these images. The database delivers them without blinking. The file system version was so overloaded that the consultant's answer to the problem was a $250,000 storage device to put a couple dozen spindles under the I/O.
We told the customer that we would do the project for free if performance did not improve to a satisfactory level (one of my designers was absolutely certain the database design would outperform the filesystem version). We were paid $50k for 2 weeks work and the customer was thrilled with the results.
It's all about what tools are appropriate for the application at hand.
Ja ik had ook op yapf een goede "don't" gevonden.quote:Op maandag 14 maart 2005 20:51 schreef rickmans het volgende:
Zie de volgende artikelen:
http://www.sitepointforums.com/showthread.php?s=&threadid=38728
http://www.zend.com/zend/trick/tricks-sept-2001.php
En zich dekt deze quote de afweging die je zou kunnen/ moeten maken
[..]
Op zich is het deleten van een record en het deleten van een aantal images niet echt de moeite, zeker niet als je dit in een kleine procedure/ functie heb vastgelegd, dan is het een kwestie van eenmalig schrijven en vervolgens netjes aanroepen.
1 | mysql_query("SELECT * FROM users WHERE permission = '!1' ORDER BY username"); |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |