Archive for the ‘PHP’ Category
How to filter user submitted data easily in PHP?
Written by Chris on August 18, 2008 – 7:29 am -How to filter user submitted data easily in PHP?
Posted using ShareThis
Firstly, as you can see this is my first post made as a direct result of using the ShareThis bookmarklet, which is pretty neat as it actually worked
Secondly and more importantly, I wanted to flag this up on my blog as it's something that quite often gets missed in PHP which is actually a very powerful tool.
As the author of the post above mentions, array_map() can be a useful function when sanitizing user data, but it has so many more uses too when dealing with the transformation of a data-set.
Basically a call such as $new_data = array_map('process_data', $old_data); will allow you to transform each element in the $old_data array to a new element in the $new_data array via the function called process_data.
What's more you can manipulate multiple data-sets in this way too by specifying multiple arrays, so long as process_data() can take in the arguments.
For example lets say we have process_data($item1, $item2, $item3) which manipulates $item1, $item2, $item3 to produce a single result.
If we need to perform this calculation on a bulk set of data we can do
$new_data = array_map('process_data', $array_of_item1, $array_of_item2, $array_of_item3);
Easy huh?
I still see people performing these transformations, calculations, whatever, using for, foreach and while loops which can be prone to failure under certain conditions, and are probably less efficient code than simply making this call.
So why don't more people use it? I don't know, but maybe this post will help raise awareness!
Popularity: 67% [?]
Sphere: Related ContentTags: array_map, code, data, development, PHP, post, website
Posted in PHP, Web Development | 1 Comment »
Refactor My Code - I Wish I’d Thought of It!
Written by Chris on August 15, 2008 – 9:03 pm -refactormycode.com is a fledgling website setup as a project by French Canadian Ruby Developer Marc-André Cournoyer and basically it's like a coding forum without the usual forum junk, style and obfuscation of content (forums for me are always a pain to use because of the tiers of information you have to go through).
It's a great looking website covering all the current major programming languages (at least when thinking of the web) and the idea behind it, though simple, seems to work really well.
Basically, you have some code that works, but you want to make it better, more efficient, or just tidier. So, you post your code sample and other people suggest changes. It's kind of like yahoo answers for developers or the comments foot of the PHP manual.
The code to be refactored, so far in the PHP section at least, has been of a reasonable standard i.e. that of at least intermediate developers, which is great as these services can tend to get flooded by newbies who don't know their $i++ from their ++$i :p and rapidly lose interest for me.
So far there are only a few PHP samples on there to comment on but I think, as the site begins to grow, there will be a wealth of well developed and critiqued code that serves as good examples or directly useable functionality.
So far I can't really fault it, other than making the "Best" link clearer by calling it "Best Refactorors" or something similar, and providing some closed, or accepted answer(s) type functionality to stop a thread getting out of hand (it could be that this exists already but I just haven't seen it yet). Maybe even an option to download each refactoring as a plain text file could be useful.
So, to round up, as you can probably tell, I love this site and you can see my standing in the community in the foot of this page! Keep up the great work Marc and I hope your site develops in the way it deserves and gets the recognition it should!
Popularity: 96% [?]
Sphere: Related ContentTags: action, code, development, Flash, JavaScript, PHP, post, script, webservices, website
Posted in Flash, JavaScript, PHP, Web Development | 1 Comment »
PHP5 Universal File Download Class
Written by Chris on August 12, 2008 – 12:16 pm -After finding different hosting companies having wildly different policies when it comes to what's enabled and what isn't in PHP, I've built a generic file download class which should work in almost all situations.
This is the first version so there are some improvements to be made and if you download it, you'll see where some improvements may be made. I will be releasing another version when I've had time to do some further work on it. For now you can find the source code plus any community improvements here: http://www.refactormycode.com/codes/440-universal-file-download-class
I should also mention that this class has been cleaned of some application specific code, so if there's any disjointed bits I apologise - I have tried to deal with any discontinuities before posting but there may be something i've missed (this is also the reason for the bunch of if's in get_file() if you are to use this as is you may want to replace them with your own custom code).
Popularity: 83% [?]
Sphere: Related ContentTags: 5, Class, Download, file, PHP, script, Universal
Posted in PHP, Web Development | 3 Comments »
Advanced Syntax-Hilighting Online Code Editors - A Wordpress IDE?
Written by Chris on July 2, 2008 – 6:10 pm -When I write plugins for wordpress I like to do it on a test blog in a live environment.
Maybe not the best idea, but it's how I like to do it, and it also flags up any weird and wonderful restrictions to the development of the plugin as a result of my hosting company's security policy.
For a while now I've worked with just the plain old plugin editor that comes with wordpress, but this is cumbersome to say the least and as such I went looking for a syntax highlighting editor which I could (if necessary) convert into a plugin to (ironically enough) improve the plugin editor.
Turns out that there's quite a few good syntax highlighting online code editors available (list at the end of this post) and at least one neat one (CodePress) has been converted to a wordpress plugin for theme editing and plugin editing.
This is a really great start, but there's a couple of things I'd really like to see to progress this work - If I have the time I'll do it myself, otherwise someone else reading this post may like to take it up!
Basically the current Codepress for wordpress plugin is missing (in my opinion) a few additional functions to create backups of the plugin or theme files you're working on, to an extent a rudimentary versioning system could and should be implemented within the editor.
There should be an option to package up the plugin you're editing and release it to the community/tie updates into the automatic plugin updater of 2.5
The current CodePress release is great but what would make it even greater would be code hinting when editing.
I don't know enough JavaScript to say whether or not this is possible but it would be cool for the editor to notice that you've just typed or started to type a PHP (or other language) function name, and provide you with a syntax hint for the function.
This would work (in my mind) by noticing the opening of ( and then checking what preceded it back to the last space or operator (*, ., /, etc.), then looking up this string from a function definition array and displaying a tooltip near where you are editing in the text area to remind you of the syntax - possibly with an autocomplete if you press enter.
I think the main problem with this is knowing where you are in the text area to display the div with the tool tip text in it in the right place. I know you can monitor where you are in a text area in terms of columns and rows, so surely if you know the location of the start of the text area and the size of the character in the text area and the co-ordinates of the cursor in the text area via row/column values you should be able to determine the optimal position for the <div>?
I think it would be really great to see that kind of functionality in any of the online code editors listed below on it's own let alone any other stuff such as versioning that I've already mentioned.
So there it is!
I probably will end up doing some work on the codepress plugin myself from a versioning point of view, but if any one else out there can figure out a way of doing the code hinting in JS that'd be fantastic!
Existing On line Code Editors:
Autosuggest example (could be used to provide the tool tip if the positioning is worked out): http://gadgetopia.com/post/3773
Wordpress plugins:
- Codepress plugin for Wordpress: http://rulesplayer.890m.com/blog/?page_id=4
- Flash based code editor with wordpress plugin (dated solution IMO): http://www.flashtexteditor.com/ftf/
Popularity: 31% [?]
Sphere: Related ContentTags: code, codepress, editor, high, highlight, java, JavaScript, light, PHP, plugin, press, script, syntax, theme, Wordpress
Posted in JavaScript, PHP, Plugins, Pot O' Ideas, Web Development, Wordpress | No Comments »
All of A Twitter
Written by Chris on April 23, 2008 – 11:06 pm -Recently I've been playing about with Twitter and so have some of the other guys at work.
Twitter's great but but along with the blogs, facebook, myspace, MSN and whatever else there'd be sooo many places I'd have to update my status.
In reality, the only place I even half regularly keep my status updated is in my MSN IM client, so I got to thinking, what if I could use MSN to update twitter and then use twitter to update my blogs (and possibly everything else - I haven't tried everything else yet though I have to admit).
Well after a short amount of time I found a very nice script for Messenger PluPlus! Live (http://www.msgpluslive.net/) called Twit4Live (http://www.msgpluslive.net/scripts/view/315-Twit4Live/) which allowed me to update twitter from MSN as I wanted to.
Then I found the Twitter Tag Wordpress plugin for my blog (http://www.waltervos.com/downloads/wordpress-plugins/twitter-tag/), a winning combination - if only it worked...
To be fair, Twitter Tag will work on a large number of blogs, but because it has to do a remote file include (which a lot of shared hosting companies turn off for good reason), it didn't work on mine.
A short time later though I fixed this and everything's hunky dory (so long as you have Linux based hosting).
So if you want to update your blog with your twitter status and the original Twitter Tag plugin doesn't work, why not give this modified version a try instead :)
Popularity: 12% [?]
Sphere: Related ContentTags: client, im, msn, plugin, twitter, Wordpress
Posted in PHP, Web Development, Wordpress | No Comments »















Feed 
