Archive for category Web Development
New Session Cookie Created on Every Page Refresh in CodeIgniter
Posted by Randy in Linux Stuff, Programming, technology, Web Development on May 7, 2012
CodeIgniter's way of handling session data is slick, and I use it a lot. However on my current project, I went overboard on my configuration changes and accidentally caused a problem that had me scratching my head for a few minutes. I noticed that session data wasn't persisting and that my sessions table (I opted for database storage of my session data) was filling up with new rows of session data every time I reloaded a page in my project. This prevented my login functionality from working.
The solution to my problem was a configuration detail. I had set $config['cookie_domain'] to the domain name I will eventually use for the site. CodeIgniter didn't like this because my development environment is not on that domain. So it was creating new cookie/session data every time I loaded a page. The problem made sense after I thought about it for a bit. I remembered that I had set a few extra settings in the config, and sure enough, that was the winner.
The problem can happen when other settings are incorrect as well. So pay close attention to those settings, and look there first if you notice that sessions are being created on every page load.
Clickbank Analytic Software
Posted by Randy in Internet, Internet Money, Programming, technology, Web Development on April 21, 2012
There's a site called cb-analytics.com which has always been a great resource for information on Clickbank products. However, I've always found the site hard to navigate and I wanted a site that showed some of the "hot" clickbank products. So, I've written a site called cbniches.com which I hope will rectify these issues.
The site shows all the latest products in each category and shows gravity and earnings per sale. It also has a graph for each product to show gravity over time. I think this will be pretty helpful to affiliate markets looking for new products to promote on Clickbank. Check it out at http://cbniches.com. I wrote it with the latest version of my LavaPHP framework, another product I've been developing as open source. LavaPHP can be found on github, but it's still in early development.
Introducing LavaPHP – Yet Another PHP Framework
Posted by Randy in Open Source, Programming, Web Development on April 13, 2012
I've used quite a few PHP framework to varying degrees, and like many other PHP developers, I've decided to make my own. Of all the current frameworks available, I prefer CodeIgniter, because it is easy to use, has great documentation, and generally stays out of your way.
Everyone has their opinion of the best PHP framework, but I like the ones that let me write PHP and don't throw a lot of features that I don't need into the mix. I found that no matter what PHP framework I was using, I was always creating a table for users. I was always creating login functionality for users. I was always creating email confirmation functionality for users. I was always creating an admin interface for working with my configuration. I was always creating classes that helped me work with web services/REST APIs. I always need a small web service of my own for Ajax functionality. I always needed to add curl functionality just in case the hosting provider had fopen disabled (which most do).
Those were the things I needed. ORMs are great and all, but I really didn't want to learn proper YAML syntax just so I could setup automatic object models for my database tables. Creating models for my database isn't that much of a chore. Creating a complete user system can be.
So, I set out to create a framework that I can use for my own projects and have all the functionality that I find I usually need right out of the box.
Another thing about frameworks is that they are designed to make enterprise level sites. They aren't designed to create software system which can be distributed. By that, I mean I wanted to create a software package that could be installed by end users and used by them to create their own websites (custom CMS system with a specific purpose). A normal framework doesn't work well in this area because of the way views are usually handled. Mainly, I wanted third parties to be able to create themes for my CMS systems without much effort. With something like CodeIgniter, I could use a templating engine via a plugin or Codeigniter's own minimalist template engine, but I don't like take one piece of software and adding on a bunch of plugins.
First you have to learn how to use the plugin. Then you have to hope that there isn't a bug in the plugin that will spring up in your app. Then if there is some small customization that needs to be made to the plugin, you could spend days trying to figure out a way to make it work with your system, when it would have taken less time to just write your own. Using plugins also feels a bit like cheating to me, as well. I want to know every little part of my system, so that if a bug comes up, I'll know right where to look or at least have a decent idea where to look.
With all that said, I'm announcing my PHP framework. I've written it completely from scratch and I'm hosting it on Github. I also have purchased the dot com for it. I'm calling it LavaPHP. The motto will be "LavaPHP - Add a little lava to your LAMP" and it will have a lava lamp as it's mascot/logo. If you'd like to help with the initial development, hit me up and fork the project here: https://github.com/lpcustom/LavaPHP
Best Godaddy Alternative Registrar
Posted by Randy in Internet, Internet Money, Networking, technology, Web Development on January 27, 2012
Many of you may be die-hard GoDaddy users. GoDaddy's support of the SOPA has led many people to start looking for a new registrar, including myself. After a boycott, GoDaddy broke away from its support of SOPA. However, their initial support for the legislation was enough to turn me away. I do not plan to do any further business with them and will be slowly migrating my existing sites over to another registrar as time goes by.
In my search for a GoDaddy alternative, I found that I really like NameCheap.com. They offer good rates on domain transfers and registration. I also like their control panel much better than GoDaddy. They don't have as much up-selling going on when you register a domain. I always found that annoying about GoDaddy. I also didn't care for GoDaddy's domain manager. Once, I tried out GoDaddy's Windows hosting as well. It was terrible. So if you are looking for a viable alternative to GoDaddy, you should definitely give NameCheap.com a try.
Reset a WordPress password
Posted by Randy in Applications, Internet, technology, Web Development on January 24, 2012
I'll make this post short and sweet. Let's say you've forgotten your login for a WordPress site. To reset the password to something new, you can simply use a SQL query. If you have access to PHPMyadmin or the MySQL command line, this is really straight forward.
From PHPMyAdmin, open the database for the WordPress installation. If you don't know which database to use, check out your wp-config.php file inside your main WordPress installation folder. You'll find constants defined in that file for your database name and database user. Once you've found the database, you can execute a SQL statement by clicking the SQL button. In there, type:
UPDATE wp_user SET user_pass = MD5("yourpassword") WHERE user_login = "admin";
That's assuming that your username is "admin". Change it to whatever username you are using. Once you run that SQL statement, your password will be set to whatever you put in "yourpassword". Both the username and password need to be quoted in the SQL statement.
To do the same thing in the MySQL command line, connect to the database with:
mysql -u<username> -p
Substitute <username> with your actual username from the wp-config.php file.
You will be prompted for a password. Use the password from the wp-config.php file.
Once you are logged into the mysql command problem type:
USE <databaseName>
Substitute the actual database name from the wp-config.php file.
Finally, type the update statement above and hit enter.
After you've updated the table via SQL, you should be able to login to your WordPress installation.
GoDaddy Alternatives | Boycott GoDaddy
Posted by Randy in Internet, Networking, Web Development on December 23, 2011
Due to its support of SOPA, many people are calling for a boycott on GoDaddy. At first GoDaddy was laughing because of the planned boycott. After about 24 hours, their tone changed and they proclaimed that they were no longer supporting the legislation. Many people are looking for alternatives to Godaddy.
I searched for a bit and found that about the best deal in town is namecheap.com. There is a transfer fee for moving domains over to them, but you get a free year of registration with the transfer. So for around $7 bucks you can transfer and renew a .com. If you have a few months left before it's time to renew your .com, you can still transfer the domain and get a free year along with the remaining time of your current registration.
Check out their deals. Let's show GoDaddy that we do not like their support of this unconstitutional legislation.
To Comment or Not to Comment
Posted by Randy in Programming, Web Development on January 13, 2012
Anyone who has had programming classes knows that one of the primary things they push on you is that all good programmers comment their code. They don't always tell you how much commenting you should do, although some do give good advice. How does one decide how much is enough.
Comments are great because they are basically communications between programmers to help with the logic that is going on in the code. Sometimes the two programmers are the same person. I think a good rule of thumb is to comment just below your own skill level. This means to comment just enough to help someone of almost the same skill as yourself along. You don't want to comment your code to the point that it clutters up the rest of the source, but you want to be able to read through your own code and quickly find the cause of any potential bugs. You never know when you'll have to go back through your own code. Chances are you won't remember what exactly is going on at any particular point, especially if you work on a lot of projects.
Of course, there are always conventions that are mapped out beforehand for most developing teams, but if you are working solo, you should comment as if you are in a team environment.
I personally find comments distracting and ugly when viewing code. I don't particularly care for method and class header comments. They rarely give any useful information. Inline comments are very valuable, however. So if if the coding standards of your team require class and method headers, put them in, but if you are solo or there's no coding standards in place that require these types of comments, don't use them. You should be able to look at any method and tell what kind of parameters it takes, and you should be able to quickly find the return type. These aren't necessary and break down code readability in the end.
Comment changes. If you have to remove some code, comment it out instead of deleting it. This will help you revert changes or come up with better solutions if it is later found that the new code is buggy itself. If you have some bit of logic that is complicated even to your own eyes, comment it and explain how it works. Other than that, keep comments to a minimum.
code, commenting code, more or less comments in code, Programming
No Comments