Custom field – link to remote image

Someone today asked about users uploading an image from a remote server when submitting a link. While I don’t know how to do that simply and easily, here’s what I did say about a similar method that can work.

One of the biggest issues with that is IF you’re going to be linking to an external image you have no contol over what that image is and no way to moderate it.

A user could link to a simple screenshot during submission and after approval change the image to an ad for an adult site.

Or what if the user replaced the image with a script meant to alter your site or worse, attack users. That would find your site listed on search engines as a phishing site and you’d lose all traffic.

I seriously caution you against this. Losing control of your site is not a good thing.

You can do this quite easily, but yet again, I suggest against it.

Add a new custom field as below.

Field imageurl
Text Image URL
Type TEXT
Required No
Searchable No
Permission All Users
Option (Leave Blank)
Max Image Dimension (Leave Blank)
Max File Size (Leave Blank)
Allowed File Extension (Leave Blank)

Why leave those items blank? Because IndexU cannot control those fields because you are adding this as TEXT. So how do you control it? Read on.

Add another custom field
Field imagewidth
Text Image Width
Type TEXT
Required No
Searchable No
Permission All Users
Option (Leave Blank)
Max Image Dimension (Leave Blank)
Max File Size (Leave Blank)
Allowed File Extension (Leave Blank)

And yes we need another one

Field imageheight
Text Image Height
Type TEXT
Required No
Searchable No
Permission All Users
Option (Leave Blank)
Max Image Dimension (Leave Blank)
Max File Size (Leave Blank)
Allowed File Extension (Leave Blank)

So now we have an image URL, height and width. Now we need to put them on detail_link.html (and upgrade_form.html as well)

Remove <%custom_form_field%> as this will NOT work with that enabled.

Now you simply create your link to the image as below

<img src=”<%$imageurl%>” height=”<%$imagewidth%>” width=”<%$imageheight%>” alt=”" border=”0″ />

Now with this type of system you can NOT control how big or small the images that the user links to. If they enter an image that’s 1500px by 1500px then you’re stuck with it and there’s nothing you can do.

It might just be better to force a single image size, perhaps 468×60 which is a typical banner size. This way if a user changes the image, it will display as a 468×60 image no matter what they do.

I hope you see the pitfalls of allowing something like this, which is the only reason I wrote all of it out. It’s a bad idea but yes, it’s very easy to do.

Article 6 – Why webhosting sucks

This may sound more like ranting than an article, but honestly it’s the truth, and as a website owner you deserve to know “Why webhosting sucks”.

Time and time again I see issues that are tracked down to being a server issue. And most of the time it’s the same “big” hosts that causes these issues. Just because a host is big and has made a name for themselves doesn’t mean they are a good host.

Many hosts have very stong security to prevent things like scripts abusing their servers. Unfortunately this security is usually poorly implimented and causes issues with scripts or functions. Some hosts make you log into a control panel to enable features that should simply work without having to do anything.

And lets not get started on “unlimited”. There is no such thing. Any host trying to sell you unlimited is simply lying to you and should never be trusted. If “unlimited” was real then why do you not have unlimited hard drive space on your own computer? It’s crap. The fact is, they say they have no limit but read the fine print, there is a definite limit to what you can do with that account. Most of them limit the CPU usage, many of them limit the type of files you can upload, and all of them just want your money.

What happens when you go over the limit on unlimited? You get cancelled immediately, no refund, no backup data, do not pass go, do not collect $200.

How do you know which host is going to be good? Unfortunately you can’t know that before hand unless you have an endoresement. There are only two compaines that I would endorese for hosting IndexU. One would be Frank (c-4.us) and the other would be mine. The trick here, is that I don’t want just any customer that can find my URL and sign up.

There are a few types of webhosting clients
1) Users who know nothing
2) Users who know a lot but admit when they are stuck
3) Users who think they know everything

And number three is why I dislike the hosting business. There are far too many people out there that think they can do anything because they saw it somewhere else or they read about it on some website. And I’m here to tell them that they are wrong. Most of them don’t listen, but I can’t control that.

Thankfully these users don’t often sign up with companies like mine. They go sign up with the big hosts and get their accounts terminated rather quickly. Then they go on webhosting forums and bash the companies they abused.

Which customers do I like the best? Actually I like the ones who know nothing the most. They are most often teachable and willing to learn. Sure group two is willing to learn as well, but they are not usually teachable and they learn by mistake. Well a mistake on a server can mean a serious problem.

Lets take a look back a few fears ago when I hired a “programmer”. You’ll see why I put programmer in quotes in a minute. I asked for a simple script that would connect to usenet, retrieve data, store the data in a temporary database, sort the data, then place it in a final database table. It turns out this programmer couldn’t get php/mysql/apache running on his computer (no idea why, I didn’t even bother to ask) so I set up a login for him to work on a live domain on one of my servers.

A few days later I suddenly get a barrage of emails telling me that usage is sky high and services are failing. I login via SSH and run TOP only to see a script in this “programmers” directory has spiked CPU usage so high that it took me 3 minutes to log in via SSH.

I terminated the process and then terminated the programmer. It’s a good thing I was at my computer when I got the emails as this wasn’t a development server, this was a production server with 80+ domains on it. If I was out or away I may not have seen it for hours which means that customer sites and my own sites would have been down.

Now you can see why VPS hosting is so popular now, in a VPS the above would never have happened.

Like I said, it’s going to sound more like a rant than an article. But your website deserves a solid, stable host that supports everything that IndexU or any other Nicecoder product requires. It’s your business that is on the line, so act like it really matters and investigate your host as much as possible.

Article 5 – How to find phrases in IndexU

Since so many people ask where to find specific text to change in IndexU I thought I would let users know how I do it and what software I use.

Get the program at http://inforapid.com/html/searchreplace.htm (it is freeware)

The program I use is called InfoRapid Search & Replace. While you don’t need to use the search AND replace feature, you can use the search easily to find what you need.

On the Search tab, the first box is “Search For”. Here you can enter a word or phrase and InfoRapid S&R will search for it.

The second box is “In Files”, simply have an asterisk there (*) and it will search all files for you.

The third box is “In Directories”. Simply browse to the folder you want to search in. This program will search every file in that directory for the string you want. To the right of this make sure that “With Subdirectories” is checked.

The last box is “Search Method”. I prefer to leave it at “Exact Phrase Matching” as I am typically searching for something very specific.

Then click Start to get your search going. The program is quick and will show you every file that the word or phrase you searched for has been found in. Of course if you searched for “My” you would get a lot of results. But searching for “My Favorites” will get you two results.

This program has saved me hundreds, if not thousands of hours over the years searching folders for files with specific words or phrases.

Hope this helps others out.

Article 4 – Data mining for a better database

Below is an article I wrote for IndexuSupport.com, so far it’s article 4 in the series. I posted all 4 tonight and you can read them on my site for free.

Many users often ask me how they can get a database for their website. There are numerous answers to this question.

1) You can buy databases from multiple sources. Some of them good, a lot of them bad. Remember to ask questions and get a sample before you buy.
2) You can use a DMOZ slice. This is a really good way to go, in fact it’s how a lot of my larger sites started. If you don’t want to buy the DMOZ Extractor you can buy slices for as low as $5.00 from me.
3) You can scrape it!

First lets get this out of the way. Scraping a database off the net is probably as close as you can come to stealing. Scraping involves processing one or more sites through a few programs that will save and extract the data that you want.

There are millions of web sites on the internet, all with a lot of links, content and data. What kind of database you want will depend on where you go look for your data.

For this example lets just assume you have a CD-ROM with the Yellow Pages on it in HTML format. And for simplicity lets assume that there are 27 pages (a-z plus numbered companies). Yes they would be large pages, but that’s not the point.

The first thing you would do is copy those pages to your hard drive so they can be processed faster. The read time off a CD-Rom is not as fast as your hard drive. Similarly if you were trying to scrape webpages you would want to copy them to your hard drive as well.

For copying a website to your hard drive you would probably use a program like Offline Explorer. There are three versions, Offline Explorer, Offline Explorer Pro and Offline Explorer Enterprise. At the minimum you want the Pro version, it’s costs around $90 and is essential in your data mining/scraping endeavour.

So you have the web pages on your hard drive in a specific directory. Now you want to suck the data out of it. For our purpose we only want the URL’s but you can mine any data you want.

For the actual data mining you need a program called TextPipe. TextPipe comes in three versions, TextPipe Lite, TextPipe Standard and TextPipe Pro. At a minimum you need TextPipe Standard and it costs $199.

I won’t get into how to work TextPipe here, but will say that once you start up TextPipe you simply add some filters, point it to a directory, file or set of files and click go. From there TextPipe does all the work and mines the data from the pages. It will output the data where you tell it to.

TextPipe Standard can strip HTML tags for you, which saves you a TON of time messing around with the saved data. What you are left with is simply a list of URL’s.

With a list of URL’s you can then import them into IndexU, and use the Fetch Meta function of IndexU to download the title, description and keywords of all the URL’s in the database.

But don’t get me wrong, TextPipe can do a lot more than just URL’s. It can save almost any formatted data off of a webpage including addresses, phone numbers, descriptions and much much more. I just used URL’s as an example.

Sure I made it all sound simple, and once you’re familiar with how these programs work and how the filters work with TextPipe there is really no end to the kinds of databases that you can create.

In all seriousness, if you have a single website running IndexU then this method is not for you. You’re looking at a cost of around $300 US just for the software, and then add your time and the learning curve required and it’s not worth the effort. However you could pay someone to do the scraping/data mining for you. It may sound expensive, but it sure saves learning how to write filters!

——————————————————————–

If you are interested in any data mining please let me know and I can try and get you a quote. I would need the following information

1) The approximate number of pages to mine and URL’s
2) The topic you are after for your database (I may have URL suggestions)
3) The exact data you want from each page
4) What format you want the data in (completed database, raw)
5) Your expected time frame

Please understand that data mining is a service that I am offering personally, not Nicecoder.

Article 3 – Why upgrade?

Why should I upgrade?

It’s a big question, that has been asked probably hundreds of times on the forum here.

With the changes we have made to the script for version 1.21, we plan on making minimal changes to the themes for each successive version. This means that from v1.21 onwards, all you should need to upgrade are the .php files.

Previously upgrading IndexU was a nightmare, and when I started with the company that was one thing which I told everyone that I would look into and do my best to change. And now it’s happened.

Yes there may need to be some changes in the templates, but when there are changes to the templates we will let you know exactly where they are and what the change is.

We do not consider the /admin/ and /admin_tpl/ directory as “changeproof”, but very few users actually modify the admin panel. In fact right now it is the admin panel that is growing and changing the most with new functions and features being added.

In the future, you will find that during an upgrade the /themes/ directory will not need to be overwritten just because there is a new version. This allows users to upgrade to the latest version with the newest features while maintaining their sites overall look and appeal.

Upgrade to IndexU Deluxe 1.21 today, I promise that it will only get better from here.

Article 2 – How to quickly populate a database

I had to answer a question recently on how to quickly populate a database, and with IndexU Deluxe 1.2 it’s very very simple to do.

I started off with a list of URL’s obtained from an outside source. Where you get the URL’s don’t matter, as long as you have them. This can even be done with DMOZ Extractor slices.

First I made the categories I wanted in the database, since this database is actually alphabetical it’s very easy to do. Twenty seven categories (a-z plus numbers) later I was complete, then I added one more that I will delete later.

The last category was “unsorted”, which is where I imported all of my links to. A quick import and I’m left with 16000+ links, not too bad to start off with.

So off I went to the admin panel and I clicked on Fetch Meta, I made sure Keyword, Description and Title were checked and to make sure there were no issues during import I put one in the Total url/cycle box. Then I chose Yes to update all links in the database and clicked on Fetch.

A few hours later the fetching was done, I now had URL’s, titles, descriptions and keywords. An instant database almost for free!

So I went and looked at my database and of course noticed some sites that fetched titles like 404 not found and other server type errors. I figured I would just search for listings that had “404″ in the title and delete them. Then I saw more than 10 pages of sites with 404 errors. How could I make this easier to do?

I fired up phpMyAdmin and loaded up the MySQL statement below

DELETE FROM `idx_link` WHERE `title` = ‘404 not found’

After running that statement I still had some listings with 404 errors, but a lot less than before. So I proceeded to use a number of other common errors to delete the sites that obviously didn’t work.

Then I went in and manually searched for 404, 301, 500 etc in the title and delete all of those sites. I was left with 14,400 listings which is still a good number of listings for a brand new site.

At this point I updated category paths, updated number of links, updated the tag clouds and then exported my database via the indexu admin panel. Why through the admin panel?
Because exporting via the admin panel gives a nice output that can be imported easily into Excel.

Now I loaded up the database spreadsheet, copy and pasted the listings and sorted them by name. Now all I have to do is add the categories and reimport the spreadsheet and it’s done.

The total time (not including fetching the meta tags) was less than one hour. And I’m left with a fully populated website that is ready to go live.

Article 1 – What does it take to run IndexU

So I sit here tonight wondering to myself “What does it take to run IndexU?” and the answers are not as simple as you think.

First I had to ask myself what IndexU was. The answer, in simplest terms, is a script. And what does a script do? A script takes user input and makes a specific output. That’s it. It’s as simple as that.

Garbage in, garbage out (G.I.G.O.), but if you put quality content in, you get a quality site in return. So why is that?

I decided to go look at competitors and other scripts. So I looked at CMS’s (Content Management Systems), directory scripts, forums, blogs, arcade scripts, proxy scripts and a few that perhaps cannot even be categorized easily. All of these scripts use PHP as their programming language, they all use HTML as their markup language and almost all of them use MySQL as their database. Some of them use SMARTY for their templates. Don’t worry about these names and terms for now, we’ll get to it later with simple explanations.

And what did I find? I found that no matter what script a user uses, it’s either a nice result or it’s G.I.G.O.. It really doesn’t matter where you’re coming from, where you’re going or what you want to do. If you expect a script to make you an overnight millionaire you’re dreaming and you might as well turn off your computer and get a job delivering newspapers for the extra money you’re looking for.

So this isn’t an IndexU “thing”. But some people say it is. Quick, tell me the last time you got a job and within 5 minutes knew everything there was about that job and no one else could do it better. You can’t, because it will never happen.

That’s the same thing with a script on your website.

Now of course I’m going to talk about IndexU here, because that’s what we deal with. But this applies to almost any script type website you might want to give a shot at running.

So first there’s installation. Sure you can pay us and we can do it, so that’s dealt with.

Next up is configuration. If you read the manual, ask a few questions and read a bit on the forums you can figure out most things. It’s not too hard to set up.

Next would be the theme, and this could include the whole theme or just customization of the theme. This is going to require knowledge of HTML, or a GOOD HTML editor that will not munge (break) PHP and SMARTY code when it edits files. HTML is a markup language, meaning that it is a language that gives instructions on how to interpret text. How do I do HTML? I write it out in notepad because I know it, I learned HTML many many years ago, way back when Windows 95 was in it’s infancy.

But you, you’re going to have to learn how to edit it, change it, delete it, move it and hack it if you want to make your site “unique”. Sure you can pay someone to do it, but a custom theme can easily cost upwards of $1000 by a good designer, and $500 is a decent price by someone who knows what they’re doing.

What about PHP, will you need to learn it? Not really, but once you get a good understanding of how HTML works you should then be able to figure out how PHP is broken up into sections and perhaps be able to pick out some small functions that are just common sense. PHP is a programming language, meaning that it is a language that interacts with a computer to perform a function.

What about SMARTY, will you need to learn it? Again not really, most of the things in IndexU will never require you to alter any smarty code at all. And if there is a call for it, most users on the forum will be able to help you as it’s usually just a very small change. SMARTY is a web template system.

What about SQL, will you need to learn that? Most likely not at all. SQL stands for Structured Query Language and is a language for databases. IndexU takes care of connecting to the database and adding/changing/deleting database records.

Lets run down what I’ve said already.

1) With almost every script you use, if you put garbage in, you’re get garbage out
2) All scripts use some kind of language, and sometimes more than one
3) Of all those languages, if you want to modify the script you will at least need to know HTML
4) There’s a lot of “stuff” in your script that you don’t need to know or worry about

So what about templates? If you don’t know HTML or any other “language”, how can you modify a template to get a unique looking website by doing it yourself? Well you could buy a template from one of the sites that sell templates for IndexU. That doesn’t exactly get you a unique site, but it seperates you from the sites that all use the free templates.

This is actually a good step for a lot of reasons.

1) No HTML or programming knowledge required
2) A limited amount of users will use the same template
3) With so many sites on the web, the odds of someone seeing two sites with the same theme are slim

So you decide to purchase a theme and with help from the manual you upload and start using that theme. Eventually you will find that you want to modify the theme. Now with IndexU Deluxe’s plugins that is getting a heck of a lot easier to do, but there are still some things that you cannot do unless you know HTML.

So now is the time to pick up a book, or search the web for some tutorials on HTML because lets face it, if you’re serious about your website you are going to want to customize it. You need to learn HTML, it’s not really that difficult, and there are tons of resources on the web that are free to help you in this regard.

IndexU Deluxe 1.21 Released

Nicecoder is proud to announce that IndexU Deluxe v1.21 has been released.

IndexU Deluxe v1.21 is a maintenance release and contains the following
- Invoice bug fix
- German language files
- Spanish language files
- Youtube video plugin

IndexU Deluxe v1.21 can be downloaded from the client area.

Indexu is the premier portal script solution that allows you to build a powerful Web Indexing Website such as yahoo or dmoz.org with easy integration & many unique features!

IndexU Deluxe v1.2 Released

Nicecoder is proud to announce that IndexU Deluxe v1.2 has been released.

IndexU Deluxe v1.2 contains the following new features and fixes
- new payment modules (AlrtPay and Moneybookers)
- dozens of new hooks added to php and html pages including in the admin area
- enhanced sendmail function
- three new plugins (contact us, latest searches, power_search)
- improved user control (inactive and suspended users)
- updated and fixed sitemap
- auto update category path urls in admin area when admin changes or adds a new category.
- various bug fixes

IndexU Deluxe v1.2 can be downloaded from the client area.

Indexu is the premier portal script solution that allows you to build a powerful Web Indexing Website such as yahoo or dmoz.org with easy integration & many unique features!

November Nicecoder Newsletter

October was a month of numerous changes and a lot of development. Some of the products we are working on did not see a release in October so November will be one very busy month. I hope you had a great Halloween and we’ll see you soon!

IndexU
The release of IndexU Deluxe v1.2 was delayed due to two factors. The first is the addition of more hooks for our new plugin system. This was a user requested feature and are more than happy to add these hooks so users can build on IndexU. The second issue was a bug with the sitemap which has been resolved.

IndexU 1.2 will feature many new tools as well. One of the biggest changes is in the user administration area. We have added new functions for admins to view inactive and suspended members and also the ability for users to resend their lost activation e-mail.

We have also added two new payment modules to IndexU which are Alertpay and Moneybookers.

iDesk 1.6.4 Released
iDesk version 1.6.4 was released in late October with numerous improvements. The following is a list of changes.
- The addition of translations (english, german and polish come pre-installed)
- Categories for the downloads sections (requested)
- Collective ticket previews (a really neat new feature!)
- Download comments and ratings
- Implement captcha on new tickets and on comments for downloads
- A quick search box
- Numerous small bug fixes

Nicemember
No updates were available for Nicemember in October, however Nicemember 1.1 was released on November 7. While this news should be in next months newsletter I figured I would include it here because of the major changes that have been included. New features in v1.1 are
- New payment gateways added
2Checkout
Alertpay
Moneybookers
recurring payments available for Alertpay, 2Checkout and Paypal

- Fix payment currency
- Invoices
- Export mailing list
- Discount coupons

NiceBackup
As many of you are aware I spoke about a program we had in development called NiceBackup. It is a windows utility used to backup cPanel (TM) accounts. I’ve recently had the pleasure of beta testing version 0.9b. Everything seems to be working very well.

As you can tell by the version number (0.9b) it is almost ready for release!

Details have not been worked out exactly, but at this time we plan on having two version of NiceBackup. One version is absolutely free, but does not have the ability to have backups run on a schedule (manual backups only). The paid version would include the scheduling feature. Pricing for the paid version will be under $20.

If you would like to join the mailing list to receive notices when NiceBackup is released please visit http://www.nicecoder.com/mailing_list.php and join list (5)

The Nicecoder Team
Bruce (co-owner/support)
Dody (co-owner/lead programmer)
John (co-owner)