Before trying these:
I would use partimage or dd to create an image of all the partitions. For example to back up your ntfs partition if it is partition three on the device sda:
dd if=/dev/sda3 of=~/windows.img
To backup the MBR with dd:
dd if=/dev/sda of=~/mbr.img bs=512 count=1
You will of course want to copy these images to a safe place.
You could also use ntfsclone, see this serverfault question and answer. Basically I am saying, back everything up first:-)
Repair the MBR / Partition Table:
Since Ubuntu can't see the partitions, sounds like it might actually be the partition table that is messed up, not the partition table itself. I would use the fixmbr from the Windows Recovery console (See Option 1 from next section) and see if that fixes it. Then I would use the Ubuntu boot cd to try to restore the Grub boot loader which, I would guess, fix the dual boot system with Rajat's instructions.
You might also try Testdisk from Linux or try these instructions for a more manual approach.
If its actually the partitions that are broken:
- Use the XP Recovery Console:
I would probably use recovery console from the windows XP disc as my first choice. To get there, boot to your Windows XP cd and the press 'R' and then 'C'. Here is a link with pretty pictures on how to get to the recovery console. From the recovery console run '
CHKDSK <drive_letter>: /F'. Now, this might overwrite the Master boot record as well, and make it so you can't boot Linux, but the Mint install CD might have a repair for the MBR as well (Ubuntu does anyways). I think it would only do this if you used the fixmbr command in the recovery console or did an automated repair, but it has been a while, so someone else can confirm in a comment maybe...
- Use ntfsfix from your Linux installation:
This tool will fix common ntfs partition errors, but it is not a complete Windows chkdsk replacement. It is part of ntfsprogs. To use it, you just provide the device as an argument, such as:
sudo ntfsfix /dev/sda3