Знаю: css, htm, js (без графики (на основе jq), знаю ajax), php.
Выполню не сверх-сложную работу.
<?php
error_reporting(-1);
header('Content-Type: text/html; charset=utf-8');
include '/libs/mainlib.php';
include '/config.php';
include '/blocks/db.php';
include '/blocks/authorized.php';
if(is_mobile()>0)
$template='PDA';
else
$template='PC';
$language='rus';
include '/lang/'.$language.'.php';
$page=!empty($get['var0'])?strtolower($get['var0']):'index';
if(isset($authorized)){
$page_ch=mq('SELECT *
FROM
`pages`
WHERE
`url`="'.ms($page).'"
AND
`showable`="1"
AND
`privs`<='.$user_info['privs'].'
AND
(`auth`=1 OR `auth`=2)
LIMIT 1
');
}
else
$page_ch=mq('SELECT *
FROM
`pages`
WHERE
`url`="'.ms($page).'"
AND
`showable`="1"
AND
(`auth`=0 OR `auth`=2)
LIMIT 1
');
////echo '/mvc/system/'.$page.'.php';
if(!$page_ch->num_rows || !file_exists('./mvc/'.$template.'_templates/'.$page.'/index.php') || !preg_match('#^[0-9a-z-_ ]+$#i',$page)){
$page='index';
$page_ch=mq('SELECT *
FROM
`'.config::$DB_PAGES_TABLE.'`
WHERE
`url`="index"
AND
`showable`="1"
AND
(`auth`=0 OR `auth`=2)
LIMIT 1
');
}
$page_show=assoc($page_ch);
include './mvc/'.$template.'_templates/'.$page.'/index.php';
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $page_show['name'];?></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="keywords" content="<?php echo htmlspecialchars($page_show['keyw']);?>">
<meta name="description" content="<?php echo htmlspecialchars($page_show['descr']);?>">
<?php
$get_css=mq('SELECT
`styles`.`url` AS style_url
FROM
`styles`
INNER JOIN
`styles_on_page`
WHERE
`styles_on_page`.`style_id` = `styles`.`id`
AND
`styles_on_page`.`page_id`="'.$page_show['id'].'"
AND
`styles_on_page`.`template`="'.$template.'"
AND
`styles`.`show`=1
ORDER BY
`styles_on_page`.`order`
');
if($get_css->num_rows){
while($show_css=assoc($get_css))
if(file_exists('./css/'.$template.'/'.$show_css['style_url']))
echo '<link rel="stylesheet" type="text/css" href="/css/'.$template.'/'.$show_css['style_url'].'" >'."\r\n ";
}
$get_js=mq('SELECT `scripts`.`url` AS script_url
FROM
`scripts`
INNER JOIN
`scripts_on_page`
WHERE
`scripts_on_page`.`script_id` = `scripts`.`id`
AND
`scripts_on_page`.`page_id`="'.$page_show['id'].'"
AND
`scripts_on_page`.`template`="'.$template.'"
AND
`scripts`.`show`=1
ORDER BY
`scripts_on_page`.`order`
');
if($get_js->num_rows){
while($show_js=assoc($get_js))
if(file_exists('./js/'.$template.'/'.$show_js['script_url']))
echo '<script type="text/javascript" src="/js/'.$template.'/'.$show_js['script_url'].'"></script>'."\r\n ";
}
?>
</head>
<body>
<header><?php include './header/'.$template.'.php';?>header</header>
<nav><?php include './menu/'.$template.'.php';?></nav>
<?php include './mvc/'.$template.'.tpl';?>
<footer><?php include './footer/'.$template.'.php';?>footer</footer>
</body>
</html>