The script as it now stand should do the trick, however, this seems really inefficient. Surely there is a different way, such as with a foreach statement or something?
<?php
session_start();
include $_SERVER['DOCUMENT_ROOT'] . '/include/config.php';
// name = theme, name = restheme - two variables from form
foreach ($_POST as $key => $value)
{
$value = trim($value);
if ($value != '') {$value = "'" . mysql_real_escape_string($value) . "'";}
else {$value = 'NULL';}
$$key = $value;
}
$band = $_SESSION['band'];
$theme = $_POST['theme'];
if ($_SESSION['oldtheme'] <> $theme)
{
$query = "UPDATE band SET theme='$theme' WHERE band = '$band' LIMIT 1";
$result = mysql_query($query) or exit(mysql_error());
}
if ($_POST['resttheme'] == "yes")
{
$query = "SELECT * FROM theme WHERE theme='$theme' LIMIT 1";
$result = mysql_query($query) or exit(mysql_error());
$body = $row['body'];
$headerh1 = $row['headerh1'];
$menufore = $row['menufore'];
$menuback = $row['menuback'];
$menua = $row['menua'];
$hover = $row['hover'];
$hoverback = $row['hoverback'];
$leftback = $row['leftback'];
$leftfore = $row['leftfore'];
$centerback = $row['centerback'];
$centerfore = $row['centerfore'];
$rightback = $row['rightback'];
$rightfore = $row['rightfore'];
$footer = $row['footer'];
$query = "UPDATE colors SET body='$body', headerh1='$headerh1', menufore='$menufore', menuback='$menuback', menua='$menua', hover='$hover', hoverback='$hoverback', leftback='$leftback', leftfore='$leftfore', centerback='$centerback', centerfore='$centerfore', rightback='$rightback', rightfore='$rightfore', footer='$footer' WHERE band = '$band' LIMIT 1";
$result = mysql_query($query) or exit(mysql_error());
}
$_GET['select'] = "theme";
include 'index.php';
?>