You should focus on getting it to save first.
There are endless amount of tutorials online on how to do it, but I would recommend using a plugin called Advanced Custom Fields. That let’s you create custom fields in specific pages/posts, without writing any code. This plugin also provides you with functions to use on the front-end to get the content.
However if you want to do it yourself, the data is saved to the postmeta table. You will need to use this function get_post_meta() to retrieve that data.
See the codex:
http://codex.wordpress.org/Function_Reference/get_post_meta
Once you can retrieve the data, it’s a matter of checking whether the sales prices exists or not. If it does, add a css class to the original price to cross it off. And then display the new price. If there’s no sale price… do nothing.
<?php
$args = array( 'post_type' => 'sport');
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
$meta = get_post_custom($post->ID);
the_title();
echo $meta['price'][0];
//Assuming that $meta['price'][0] holds your regular price
//Assuming that $meta['sale'][0] holds your sale price
if(isset($meta['sale'][0])){
echo "<div class="sale-price">" . $meta['sale'][0] . "</div>";
echo "<div class="old-price">" . $meta['price'][0] . "</div>";
}else{
echo "<div class="regular-price">" . $meta['price'][0] . "</div>";
}
endwhile;
?>