Martin E. Psinas is a self-taught web developer, published author, and is currently studying Japanese. For more information, visit his website.

Martin's articles

  1. Moving to Cloud-Based Web Development

    One author recently found himself in need of a new laptop and settled on the Samsung Chromebook. “I knew the Chromebook was designed without a hard drive and is intended for casual web surfers, but that didn’t stop me.” See how he made the transition from developing in a familiar desktop environment to the Cloud.

  2. Adding Text Watermarks with Imagick

    In a previous article here on PHPMaster, you saw how to create watermarks with Imagick using an overlay image. In this article, you’ll see you how to achieve a similar effect using plain text.

  3. Easy Spam Prevention Using Hidden Form Fields

    Maybe I’m old-fashioned or a purist, but there’s one aspect of usability that’s severely lacking on many websites. I’m referring to the insanity surrounding spam prevention. As noted in a personal blog entry back in November 2011, I was having some issues with spam and came up with a solution that I’ve come to learn […]

  4. Role Based Access Control in PHP

    Role Based Access Control is a model in which roles are created for various job functions and permissions to perform operations are then tied to them. A user can be assigned to one or multiple roles which restricts their system access to the permissions for which they have been authorized. In this article you’ll learn more about RBAC, and how to enhance your existing authentication system with it.

  5. Tracking Upload Progress with PHP and JavaScript

    A problem that has plagued web developers for years is how to add real-time information to their applications, such a progress bar for file uploads. Users are impatient; they don’t want to sit and wait while the browser is doing something and wonder whether it has frozen or if they have a slow connection. Providing a progress indicator gives users useful information and lets them know exactly what’s going on. Learn how a new feature in PHP 5.4 can be used to create a dynamic upload progress bar without any external libraries or browser dependencies.

  6. PHPMaster: Working with MySQL Events

    MySQL events were added in MySQL 5.1.6 and offer an alternative to scheduled tasks and cron jobs. Events can be used to create backups, delete stale records, aggregate data for reports, and so on. Unlike standard triggers which execute given a certain condition, an event is an object that is triggered by the passage of time and is sometimes referred to as a temporal trigger .

  7. PHPMaster: Working with MySQL Events

    MySQL events were added in MySQL 5.1.6 and offer an alternative to scheduled tasks and cron jobs. Events can be used to create backups, delete stale records, aggregate data for reports, and so on. Unlike standard triggers which execute given a certain condition, an event is an object that is triggered by the passage of time and is sometimes referred to as a temporal trigger . You can schedule events to run either once or at a recurring interval when you know your server traffic will be low.

  8. Working with MySQL Events

    MySQL events (also known as temporal triggers) were added in MySQL 5.1.6 and offer an alternative to scheduled tasks and cron jobs for database activities. This article will teach you what you need to know to create and manage events of your own.

  9. Creating a Mobile Photo Blog, Part 2

    This entry is part 1 of 2 in the series Creating a Mobile Photo Blog

    This is the second article in the two part series showing you how to create a photo blog that can updated on the go from your mobile device. You’ll bring together the database schema and POP3 class from the previous part and toss in a little cron magic to finish the project.

  10. PHPMaster: Creating a Mobile Photo Blog, Part 1

    It seems like everyone these days is texting away on their mobile phone or updating their social network status every 5 minutes. It’s no surprise that the convenience of being able to access the Internet from anywhere at any time has made sharing messages and pictures so popular. I can’t imagine going anywhere without my cell phone on the off chance that something interesting might happen and I can document it as if I were the first news reporter on the scene. This is the first article in a two-part series in which I will show you how to create a photo blog as part of your personal website which you can update from your phone simply by sending an email.

  11. Creating a Mobile Photo Blog, Part 1

    This entry is part 1 of 2 in the series Creating a Mobile Photo Blog

    The convenience of being able to access the Internet from anywhere at any time has made sharing messages and pictures very popular. This is the first article in a two-part series in which you’ll learn how to create a photo blog as part of your personal website which you can update from your mobile phone simply by sending an email.

  12. PHPMaster: Preventing Cross-Site Request Forgeries

    Cross-site request forgery (CSRF) is a common and serious exploit where a user is tricked into performing an action he didn’t explicitly intend to do. This can happen when, for example, the user is logged in to one of his favorite websites and proceeds to click a seemingly harmless link. In the background, his profile information is silently updated with an attacker’s e-mail address. The attacker can then use the website’s password reset feature to e-mail herself a new password and she’s just successfully stolen the account.

  13. Preventing Cross-Site Request Forgeries (CSRF)

    CSRF is a serious exploit where a user is tricked into performing an action he didn’t explicitly intend to do. Learn exactly how CSRF attacks work and what you can do to protect yourself and your users because, as the old saying goes, “an ounce of prevention is worth a pound of cure.”

  14. PHPMaster: Monitoring File Integrity

    Ask yourself how you might address the following circumstances when managing a website: A file is unintentionally added, modified or deleted A file is maliciously added, modified or deleted A file becomes corrupted More importantly, would you even know if one of these circumstances occurred? If your answer is no, then keep reading. In this guide I will demonstrate how to create a profile of your file structure which can be used to monitor the integrity of your files. The best way to determine whether or not a file has been altered is to hash its contents.

  15. Monitoring File Integrity

    How would you know if something is modified or deleted from your website, be it either maliciously or unintentionally? This article teaches you how to create a profile of your site’s file structure using hashes which then can be used to monitor the site’s integrity.