Q:

Losing speech marks on page refresh

I have built a category navigation system using php and mysql.
$query = "SELECT category_name, category_desc FROM categories";
$result = mysql_query($query, $dbc)
or die (mysql_error($dbc));

while($row = mysql_fetch_array($result)) {

$catname = $row["category_name"];
$catdesc = $row["category_desc"];

echo "<li><a href='getsubs.php?category=$catname'>$catname<br /><span>$catdesc</span></a></li>";

This code provides me with a list of categories from my database. 
When these categories are clicked and the getsubs.php file is requested:
$category= $_GET['category'];

$query = "SELECT subcategory_name FROM subcategories WHERE subcategory_parent = '$category'";
$result = mysql_query($query, $dbc)
or die (mysql_error($dbc));

while($row = mysql_fetch_array($result)) {

$subcatname = $row["subcategory_name"];

echo "<li><a href='getsubsubs.php?category=$subcatname'>$subcatname</a></li>";

$category = mysql_real_escape_string($_GET['category']);

}

the text on the rest of the page (which is not database driven) loses any speech marks/quotation marks (") which were present at the base level. Does any one have any idea why this might be? 
Many thanks in advance.
EDIT: Before and after:

A:

The problem was nothing to do with my character encoding which upon checking were all correct. The problem was that I had been using a different type of quotation mark which I still cannot find on my keyboard.
Quote type 1 = “ (this one was causing the problem)
Quote type 2 = " (this can be found above the right shift key on a mac)
The text had been copied and pasted from another file which contained these weird quotation marks.
If anyone knows where this alternative mark came from it would be useful to know for the future.
Many thanks for all your input guys.

