Fejl-validerer XHTML 1.0
Hej Eksperter.Jeg har flg. php-fil/kode, der gør således at brugerne på min side kan skifte tema/theme/udseendet på siden.
Koden:
---------
<?php
if (!defined("IN_FUSION")) { die("Access Denied"); }
$ts_dir = INFUSIONS."theme_switcher_panel/";
if (file_exists($ts_dir."locale/".$settings['locale'].".php")) {
include $ts_dir."locale/".$settings['locale'].".php";
} else {
include $ts_dir."locale/English.php";
}
openside($locale['ts01']);
$theme_list = makefilelist(THEMES, ".|..|templates", true, "folders");
array_unshift($theme_list, "Default");
natcasesort($theme_list);
$theme_list = array_filter($theme_list, "simple_theme_exists");
if (isset($_POST['ts_theme']) and in_array($_POST['ts_theme'], $theme_list)){
if(iMEMBER){
$result = dbquery("UPDATE ".DB_PREFIX."users SET user_theme='".$_POST['ts_theme']."' WHERE user_id='".$userdata['user_id']."'");
}else{
var_dump(setcookie("v7_themeswitcher", $_POST['ts_theme'], time() + 3600 * 24 * 30, "/", "", "0"));
}
redirect(FUSION_REQUEST);
}
echo "
<form method='post' action='".str_replace("&","&",FUSION_REQUEST)."' style='text-align:center;'>
".$locale['ts02']."<br />
<select id='ts_theme' name='ts_theme' class='textbox'> ";
$current_theme = empty($userdata['user_theme']) ? $_COOKIE['v7_themeswitcher'] : $userdata['user_theme'];
foreach ($theme_list as $theme_element)
{
echo "
<option value='".$theme_element."'".($theme_element == $current_theme ? " selected='selected'" : "").">$theme_element</option>\n";
}
echo "
</select>
<input type='submit' class='button' value='".$locale['ts03']."' id='themeswitcher_submit' />
</form>";
echo '<script type="text/javascript">
$("#themeswitcher_submit").hide();
$("#ts_theme").change(function(){
$(this).parent().submit();
});
</script>';
closeside();
?>
---------------
Men når jeg vil se om siden validerer XHTML:
http://validator.w3.org/check?uri=http%3A%2F%2Fwww.phpfusion-tips.dk%2Fforside.php
- så får jeg dog melding om 7 fejl. Normalt har jeg ikke de store problemer med at få kode til at validere både HTML/XHTML samt CSS. Med i dette tilfælde må jeg erkende at jeg er på bar bund.
Den første fejl den melder, er f.eks. at der ikke tillades brug af <br />. Men ændrer jeg det til <br> - ja så får jeg mange flere fejl.
Jeg håber her er en der kan/vil hjælpe mig her. Det er jo lige før man får grå hår af det..
Mvh.
Smokeman.