Friday, February 29, 2008

Import a CSV file into MySql

I recently received a CSV file that I needed to import into MySQL, I tried to use Navicat on a Windows machine but the file was large enough to cause it to hang. So I went to the command line on the server and created it as follows

mysqlimport --fields-terminated-by="," --fields-optionally-enclosed-by="\"" --lines-terminated-by="\n" databasename /pathtocsvfile/csv.csv -u mysqlusername -p

note that the name of the file I was importing was csv.csv, in order for this to work you must have created a table that will accept this data wit the same name as the file you are importing (minus the extension)

Thursday, February 28, 2008

Install Flex 2 Alpha for Linux on Ubuntu

Make sure you have a copy of Eclipse 3.3 Classic (Europa Installed)

Download this from http://www.eclipse.org/downloads/

Create a directory in your home file called eclipse3.3

Extract eclipse into this directory

Make sure you have the latest version of Java Installed (ie. Version 1.6)

and make sure it is set as the default Java sudo update-java-alternatives

Download Flex for Linux http://labs.adobe.com/technologies/flex/flexbuilder_linux/

chmod +x flex* (to allow you to execute the download file)

follow the installation process and select the eclipse installation that you have created above when prompted by the flex installer

Friday, January 18, 2008

CSS and Transparent PNG's

I use the simple solution for Transparent PNG's


<div id="newsletter_subscribe">
<form action="" method="post">
<input type="text" name="email" id="subscribeemail" />
<input type="submit" name="submit" />
<a href="">This is a link</a>
</form>
</div>


Non-IE6

div#newsletter_subscribe
{
position:absolute;
top:150px;
right:15px;
background-image:url(../images/site/subscribe_home.png);
background-repeat:no-repeat;
width:150px;
height:139px;
z-index:80;
}

Conditional Statement for IE6

div#newsletter_subscribe
{
background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/site/subscribe_home.png,sizingMethod='scale');
}


This works well, except I was finding that links and text boxes within this particular div had been disabled altogether. It is a known glitch that in IE6 any child link tag within a AlphaImageLoader filtered tag will be rendered useless. So my work around was to do the following.


<div id="newsletter_subscribe"></div>
<div id="newsletter_subscribe_container">
<form action="" method="post">
<input type="text" name="email" id="subscribeemail" />
<input type="submit" name="submit" />
<a href="">This is a link</a>
</form>
</div>


I then altered my CSS as follow

non-IE6

div#newsletter_subscribe
{
position:absolute;
top:150px;
right:15px;
background-image:url(../images/site/subscribe_home.png);
background-repeat:no-repeat;
width:150px;
height:139px;
z-index:80;
}
div#newsletter_subscribe_container
{
position:absolute;
top:150px;
right:15px;
width:150px;
height:139px;
z-index:80;
}

Conditional Statement for IE6

div#newsletter_subscribe
{
background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/site/subscribe_home.png,sizingMethod='scale');
}


This then rendered a seperate div with no child elements and just positioned the Links and Input boxes in another div over the top of my transparent PNG.

Wednesday, December 19, 2007

Bug Tracking using Mylyn and Trac

You will need to be using the Eclipse IDE in order to use the Mylyn Plugin.

The mylyn plugin can be found at http://www.eclipse.org/mylyn/.

Follow the installation instructions that are appropriate for your version of Eclipse.

I use 'FastViews' a lot when developing in Eclipse, so after installation of the mylyn plugin I add a new fastview for both 'Task Repositories' and 'Task Lists'.

For those who don't know what a fastview is it is a button on a toolbar normally on the side or bottom of the eclipse window which enables a pop up to be displayed.

Once you have your fast views working then open the 'Task Repository' fastview and right click and create a new repository. You will then need to paste the url of your Trac Installation. In my case this looks something like https://www.***.com/trac/***/nameofproject. Then enter your username and password should your Trac Installation require this. Then click validate settings.

To Create a Task
So how do you get your tasks to appear in the task list? You should now be able to now go to your fastview called 'Task List' just type an asterisk into the 'find' text box in the task list and hit enter.

To Add a Task
You should now be able to now go to your fastview called 'Task List' and right click and create a new task and select the repository you want your task stored in.

NOTE:If you find that your task opens up in a Trac webpage it is likely your Trac Installation does not have the XML-RPC plugin which is required for the Mylyn to use its internal Bug Frontend. You should be able to install the plugin to your Trac Installation easy enough and once you have done this, go back to the fastview titled 'Task Repositories' select you repository and under additional settings select XML-RPC as the access type. When you add a Task now you should be using the Mylyn bug Reporting Tools rather than the webpage.


Happy Bug Tracking.

Amazon S3 useful commands with S3Sync

If you are using Amazon's S3 service for Simple Storage (offsite backups) in conjunction with the S3Sync Project then there are some simple commands that may be of benefit to you

From the command line browse to the directory that hold the file s3cmd.rb

To list all available buckets type
./s3cmd.rb listbuckets


To create a bucket
./s3cmd.rb createbucket BucketName


To list all files within a bucket
./s3cmd.rb list BucketName


To list all files within a key
./s3cmd.rb list BucketName:Key


To drill down into folders in a bucket
./s3cmd.rb list BucketName:Key/folder1/folder2


To copy a directory from a bucket to your local computer
./s3sync.rb -r BucketName:Key/folder/subfolder /somedirectory

Thursday, November 8, 2007

SQLite Browser

I have been looking for a good SQLite Browser and came across this firefox plugin. Makes creating and viewing your SQLite databases straightforward enough

https://addons.mozilla.org/en-US/firefox/addon/5817

Saturday, October 6, 2007

Create a Virtual Server with Apache, VMWare and Blue Dragon

This is a brief guide to creating a VMWare Server that runs Centos Linux, PHP, MySQL, BlueDragon on Apache. It also briefly shows how you can run this so that the files being served in apache are running from a windows machine, which makes it perfect for a testing environment.

To begin

Download Centos5 from ThoughtPolice (www.thoughtpolice.co.uk) and unzip the VMWare image file

Load the file in VMWare Player

Once loaded log in username:root password:thoughtpolice
enter 'yum install apache2' (installs apache)
enter 'yum install mysql-server' (installs mysql server)
enter 'yum install php-mysql' (installs the plug ins for php and mysql'
enter 'system-config-securitylevel' (open port for apache www)

Create and share a windows directory called www and create a user on the windows machine called 'linux' with a password of 'linux'

On the virtual server enter 'mkdir /mnt/www' (creates a directory which you will mount the windows share on)

Then enter 'vi /etc/fstab' and add the line at the bottom of the file by pressing '*' then 'a' and adding //192.168.79.1/www /mnt/www rw,user=linux,password=linux 0 0 (the ip address at the front of this line is the ipaddress of the windows computer)

after this enter 'mount /mnt/www' this should mount successfully, if not you may want to check any firewall settings on the windows machine to make sure it will allow access from the ip address of the vmware server. You can check the ip address on a linux computer by entering (ifconfig)

Download the BlueDragon Script from www.newatlanta.com

Copy in the BlueDragon script to install into the windows shared directory you created
browse to the directory you created earlier on the linux machine 'cd /mnt/www' then copy the Blue Dragon script onto the Linux Machine 'cp bluedragonscript /home' make sure the blue dragon script has execute rights 'chmod +x bluedragonscriptname'

Browse to the home directory 'cd /home' and run the script 'sh bluedragonscript'

Accept all the defaults and make sure you select Apache as the option of webserver

Automatic Startup of BlueDragon 'ln -s /etc/rc.d/init.d/BlueDragon_Server /etc/rc.d/rc3.d/K95bluedragon' and 'ln -s /etc/rc.d/init.d/BlueDragon_Server /etc/rc.d/rc3.d/S95bluedragon'

Create a directory for apache conf files 'mkdir /mnt/www/conf' this is where we will hold .conf files for virtual hosting

Give apache access to your folder 'chgrp -R apache /mnt/www'

Start mysql /etc/init.d/mysqld restart

Set a password for mysql '/usr/bin/mysqladmin -u root password 'password'

Make sure mysql starts on bootup 'chkconfig mysqld on'

Make sure apache starts on bootup 'chkconfig httpd on'

Make sure you download the mysql jar odbc connector file from the mysql website. This needs to be copied into the bluedragon lib directory (/usr/local/NewAtlanata/BlueDragon_Server_70/lib) (make sure the correct permissions exist for this file), you can download it into the windows directory and copy it across from the virtual server.

Download phpMyAdmin from http://www.phpmyadmin.net/home_page/downloads.php copy it across into the directory /var/www/html on the virtual server. Then rename the folder to phpMyAdmin.

Should then be able to browse to this at http://ipaddressofvmaware/phpMyAdmin

The username should be root and the password as password as we set above.