Let me show you where I'm at now...
My form:

When I click submit it adds to the database (the last entry shown here):

There does seem to be something in the image field... does this mean the image upload worked?
If so, how on earth do I display this image in my blog post as intended? The blog updates perfectly (http://stephengreig.co.uk/newjack/blog.php) but how do I include the image that was uploaded in the blog post?
My PHP code is:
<?php
/* user config variables */
$max_items = 5; /* max number of news items to show */
/* make database connection */
require_once('config.php');
$db = mysql_connect (DB_HOST,DB_USER,DB_PASSWORD);
if(!$db) {
die('Failed to connect to server: ' . mysql_error());
}
mysql_select_db (DB_DATABASE,$db);
function displayNews($all = 0) {
/* bring in two variables
* $db is our database connection
* $max_items is the maximum number
* of news items we want to display */
global $db, $max_items;
/* query for news items */
if ($all == 0) {
/* this query is for up to $max_items */
$query = "SELECT id,title,newstext," .
"DATE_FORMAT(postdate, '%H:%i, %D %M %Y') as date " .
"FROM news ORDER BY postdate DESC LIMIT $max_items";
} else {
/* this query will get all news */
$query = "SELECT id,title,newstext," .
"DATE_FORMAT(postdate, '%H:%i, %D %M %Y') as date " .
"FROM news ORDER BY postdate DESC";
}
$result = mysql_query ($query);
while ($row = mysql_fetch_assoc ($result)) {
/* display news in a simple table */
echo "<div class='newspost'>\n";
/* place table row data in
* easier to use variables.
* Here we also make sure no
* HTML tags, other than the
* ones we want are displayed */
$date = $row['date'];
$title = htmlentities ($row['title']);
$news = nl2br (strip_tags ($row['newstext'], '<a><b><i><u>'));
/* display the data */
echo "<span class='posttitle'><span class='postedon'>$date</span>$title</span>\n";
echo "<span class='news'>$news</span>\n";
/* get number of comments */
$comment_query = "SELECT count(*) FROM news_comments " .
"WHERE news_id={$row['id']}";
$comment_result = mysql_query ($comment_query);
$comment_row = mysql_fetch_row($comment_result);
/* display number of comments with link */
echo "<a href=\"{$_SERVER['PHP_SELF']}" .
"?action=show&id={$row['id']}\">Comments </a>" .
"($comment_row[0])\n";
/* finish up table*/
echo "</div>\n";
echo "<br />\n";
}
/* if we aren't displaying all news,
* then give a link to do so */
if ($all == 0) {
echo "<span class='viewall'><a href=\"{$_SERVER['PHP_SELF']}" .
"?action=all\">View all</a></span>\n";
}
}
function displayOneItem($id) {
global $db;
/* query for item */
$query = "SELECT * FROM news WHERE id=$id";
$result = mysql_query ($query);
/* if we get no results back, error out */
if (mysql_num_rows ($result) == 0) {
echo "Bad news id\n";
return;
}
$row = mysql_fetch_assoc($result);
echo "<div class='newspost'>\n";
/* easier to read variables and
* striping out tags */
$title = htmlentities ($row['title']);
$news = nl2br (strip_tags ($row['newstext'], '<a><b><i><u>'));
/* display the items */
echo "<span class='posttitle'>$title</span>\n";
echo "<br />$news\n";
echo "</div>\n";
echo "<p><a href='blog.php'>Back to news</a></p>";
/* now show the comments */
displayComments($id);
}
function displayComments($id) {
/* bring db connection variable into scope */
global $db;
/* query for comments */
$query = "SELECT * FROM news_comments WHERE news_id=$id";
$result = mysql_query ($query);
echo "Comments:<br />\n";
/* display the all the comments */
while ($row = mysql_fetch_assoc ($result)) {
echo "<div class='comments'>\n";
$name = htmlentities ($row['name']);
echo "<span class='comname'>by: $name</span>\n";
$comment = strip_tags ($row['comment'], '<a><b><i><u>');
$comment = nl2br ($comment);
echo "<p>$comment</p>\n";
echo "</div>\n";
}
/* add a form where users can enter new comments */
echo "<div id='comform'>";
echo "<FORM action=\"{$_SERVER['PHP_SELF']}" .
"?action=addcomment&id=$id\" method=POST>\n";
echo "Name:<br /> <input id='comname' type=\"text\" " .
"width=\"30\" name=\"name\"><br />\n";
echo "<TEXTAREA id='comtxt' cols=\"40\" rows=\"5\" " .
"name=\"comment\"></TEXTAREA><br />\n";
echo "<input type=\"submit\" name=\"submit\" " .
"value=\"Add Comment\">\n";
echo "</FORM>\n";
echo "</div>";
}
function addComment($id) {
global $db;
/* insert the comment */
$query = "INSERT INTO news_comments " .
"VALUES('',$id,'{$_POST['name']}'," .
"'{$_POST['comment']}')";
mysql_query($query);
echo "<p>";
echo "<span class='commentposted'>Comment posted. Thanks!</span><br />\n";
echo "<a href=\"{$_SERVER['PHP_SELF']}" .
"?action=show&id=$id\"<span class='comback'>Back</span></a>\n";
echo "</p>";
}
/* this is where the script decides what do do */
echo "\n";
switch($_GET['action']) {
case 'show':
displayOneItem($_GET['id']);
break;
case 'all':
displayNews(1);
break;
case 'addcomment':
addComment($_GET['id']);
break;
default:
displayNews();
}
echo "\n";
?>