#1 2012-04-07 13:41:02

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Zdravím,
v rámci našeho jsme vytvořili redakční systém, zatím ve fázi testování, už ted když ho používám na svých stránkách občas vidim, že má některé nemilé mouchy. Jelikož programátor kolikrát nezajde, tam kam samotný uživatel, byl bych rád kdyby se našli lidi co by byli ochotni systém otestovat a nahodit nějákou kritiku, co tomu chybí, co by to chtělo atd.


Systém funguje na integraci skriptů pro výpis do stránky.


Redakční systém lze stahovat zde: http://prograczech.hys.cz/projekty.php?viewpage=1

Offline

#2 2012-04-07 14:19:11

Martin
Endora rádce
Místo: Plzeň
Registrován: 2011-01-19
Příspěvky: 1,375
Web

Re: Redakční systém EasyCMS

Je k dispozici nějaké online demo pro nehlédnutí?


Nejnovější článek: www.zeminem.cz ...
Černé díry jsou místa, kde Bůh dělil nulou...
Endora plugin!

Offline

#3 2012-04-07 14:35:35

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Omlouvám se,
demo k nahlédnutí s výpisováním obsahu je zde: http://prograczech.hys.cz/projekty/demo/
user: demo
pass: demo

Momentálně nefunčkní

Offline

#4 2012-04-07 15:39:47

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,888

Re: Redakční systém EasyCMS

login nefunguje


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

#5 2012-04-07 15:42:19

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Už by měl, koukám, že došlo ke změně login údajů.

Offline

#6 2012-04-07 15:44:22

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,888

Re: Redakční systém EasyCMS

len som sa prihlásil a diakritika rozhodená, zaujímavé, takže prv treba diakritiku dopracovať aby sa zobrazovala korektne  wink


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

#7 2012-04-07 15:46:42

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Ano, o diakritice ted vim, zobrazuje se korektně, poté co jsem předělal soubory s jazyky na UTF8 s bomem.
EDIT: Problém nastává jenom ve chvíli, kdy se při změně kodování nahrává již uložený obsah v databázi pod jinym kodování.

Offline

#8 2012-04-07 16:19:02

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,888

Re: Redakční systém EasyCMS

No a preto musíš celý systém spraviť v jednom kódovaní, naj UTF-8 a nie mať možnosť kódovania meniť v administrácií.


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

#9 2012-04-07 16:21:08

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Spíš tu možnost smazat z administrace, protože tohle záleží na tom co uživatel vybere při instalaci. Podle toho se pak řídí i administrace, aby nedošlo k vypsání paskvilů, kdyby administrace byla UTF8 a web na cp1250

Offline

#10 2012-04-07 20:22:55

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

Login nefunkční,
malá výtka k index.php - předpokládáte nasazení Vašeho CMS na hostingu Endora, to je snad na uživateli, který hosting si vybere - nebo ne?
Pokud uživatel nasadí Váš systém na hostingu Endora na Free programu, bude mu odstavena doména pro porušení pravidel 12b2!!! Záměrně skrýváte reklamu.
Klasická Lama a BFU si s tím neporadí!!!

Popis systému byť je to beta verze, chybí mi jakýkoliv popis systému, co umí, co neumí a umět nebude, ...


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#11 2012-04-07 20:38:03

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Nepředpokládá se používání na hostingu endota a myslim, že reklama schovaná v administraci, kde by stejně neměla účinek je šumák. Reklamu jsem tam schovával už při testování sobě, nebot mi pod patičkou docela zavazela.

A jako popis systému je na stránce hotové projekty jeho popis, kam vede odkaz.

Offline

#12 2012-04-07 20:53:07

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

No to bych nechal na uživateli, ale když myslíte... (Stránky stejně nejsou validní)

Možná bych se zaměřil na search.php - je možno vkládat tagy, scripty, .... podotýkám fungující... znak ' (ALT+39) způsobí chybu


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#13 2012-04-07 20:56:11

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

A k čemu taká validace má bejt dobrá?

Co se týče enginu - s redakčním systémem je to další věc, která se bude upravovat.

Víceméně to bylo i cílem toho dát to sem kritikům, za tu dobu co to v kuse programuju ani nevim co jsem vynechal, na co zapomněl atd. Hlavně, programátora kolikrát ani nenapadne to co uživatele, takže každej postřeh na chybu vítám wink.

Offline

#14 2012-04-07 21:30:30

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

Validní kód
Validátor není dogma, ale programátor, který nectí alespoň základy čistého kódu, pak asi není dobrý programátor, ale diletant ...

Co se týče chyb - vím o čem to je hledat ve vlastním kódu chyby,

zechy napsal:

... Hlavně, programátora kolikrát ani nenapadne to co uživatele, takže každej postřeh na chybu vítám wink.

IMHO programátora právě tohle musí napadnout nejdříve!!! Dobrý programátor musí stvořit program "IDIOTEN SICHERHEIST FEST"
Není to myšleno ve zlém, jen jako návod


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#15 2012-04-07 21:39:32

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Tak kdyby všechno napadlo programátora tak zřejmě nepotřebuje ani betatestery.

Co se týče validního kodu, to se spíš pozná koder a ne programátor, v HTML se nepogramuje, ale koduje  :ugeek:

Offline

#16 2012-04-07 21:47:01

Destroyer
Endora rádce
Registrován: 2009-11-01
Příspěvky: 2,097
Web

Re: Redakční systém EasyCMS

podle mě je to jako v češtině a jakymkoliv jinym jazyce
je pak akorát vidět, že neumíš psát bez chyb

Offline

#17 2012-04-07 22:06:20

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

zechy napsal:

Tak kdyby všechno napadlo programátora tak zřejmě nepotřebuje ani betatestery.

Testování by mělo odhalit případné chyby v programu, nikoliv bezpečnostní díry systému. Na tu se musí programátor zaměřit především!!!

zechy napsal:

Co se týče validního kodu, to se spíš pozná koder a ne programátor, v HTML se nepogramuje, ale koduje  :ugeek:

Pokud programátor vkládá html tagy přímo do svého programového kódu je také současně i kodér, nebo se mýlím? Jak se pak tedy bude taková osoba jmenovat?

<?php
include_once "data/user.php";
include_once "data/sql.php";
include_once "data/database.php";

$user = new user();
$sql = new sql();
$db = new database();
$connect = $db->connect();

@session_start();
if(!isset($_SESSION["id"], $_SESSION["rank"]) || $_SESSION["rank"] == 4){
	if(isset($_COOKIE["id"], $_COOKIE["rank"]) && $_COOKIE["rank"] != 4){
		$user->setSession($_COOKIE["id"], $_COOKIE["rank"]);
	} else {
		header("location: login.php");
	}
	$user->unsetSession($_SESSION["id"], $_SESSION["rank"]);
	header("location: login.php");
}
$lang = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_language'"));
include "langset/".$lang["value"].".php";
?>
<html>
<head>
	<title><?php echo $txt["title"] ?></title>
	<?php
		try {
			$langset = mysql_fetch_array(@$sql->select("value", "cms_settings", "WHERE prefix = 'system_pagecode'"));
		} catch(Exception $exception){
			$_SESSION["message"] = $exception->getMessage();
			$_SESSION["code"] = $exception->getCode();
			header("location: index.php?error=exception");
		}
		if($langset["value"] == "utf8"){
			echo "<meta http-equiv='content-type' content='text/html; charset=utf-8'>\n";
		} else {
			echo "<meta http-equiv='content-type' content='text/html; charset=windows-1250'>\n";
		}
	?>
	<link rel='stylesheet' type='text/css' href='styl.css'>
    <?php
		if(isset($_GET["subpg"]) && ($_GET["subpg"] == "newart" || $_GET["subpg"] == "editart")){
			echo "<script src='data/tinymce/tiny_mce.js'></script>\n<script>";
			$lang = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_language'"));
			include "data/editor/editor_".$lang["value"].".js";
			echo "</script>";
		} else if(isset($_GET["subpg"]) && ($_GET["subpg"] == "addnews" || $_GET["subpg"] == "edit")){
			echo "<script src='data/tinymce/tiny_mce.js'></script>\n<script>";
			$lang = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_language'"));
			include "data/editor/editor_news_".$lang["value"].".js";
			echo "</script>";
		} else if(isset($_GET["subpg"]) && ($_GET["subpg"] == "addpage" || $_GET["subpg"] == "editpage")){
			echo "<script src='data/tinymce/tiny_mce.js'></script>\n<script>";
			$lang = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_language'"));
			include "data/editor/editor_pages_".$lang["value"].".js";
			echo "</script>";
		}
	?>
</head>
<body>
<div id='stranka'>
	<div id='header'>
		<div id='header01'><img src='images/logo.png'> EasyCMS</div>
		<div id='header02'>
        	<?php echo $txt["today"] ?> <?php echo date("j. n. Y") ?> | 
            <?php echo $txt["logas"] ?>
            <?php
				$query = mysql_fetch_array($sql->select("name", "cms_users", "WHERE id = $_SESSION[id]"));
				echo $query["name"]." | ";
				
				$query = mysql_fetch_array($sql->select("name", "cms_ranks", "WHERE id = $_SESSION[rank]"));
				echo $query["name"];
			?>
        </div>
		<div id='header03'></div>
		<div id='menu'>
        	<a href='index.php'><?php echo $txt["mainpage"] ?></a> |
            <a href='index.php?pg=articles'><?php echo $txt["articles"] ?></a> |
            <a href='index.php?pg=news'><?php echo $txt["news"] ?></a> |
			<?php
				if($_SESSION["rank"] < 3){
			?>
					<a href='index.php?pg=pages'><?php echo $txt["pages"] ?></a> |
					<a href='index.php?pg=users'><?php echo $txt["users"] ?></a> |
					<a href='index.php?pg=settings'><?php echo $txt["settings"] ?></a> | 
			<?php
				}
			?>
			<a href='index.php?logout'><?php echo $txt["logout"] ?></a>
        </div>
	</div>
	<div id='obsah'>
    	<?php
			if(isset($_GET["error"]) && $_GET["error"] == "exception"){
				echo "<b>Nastala chyba:</b> ".$_SESSION["message"]."
				<br><b>Kod chyby:</b> ".$_SESSION["code"];
			} else if(isset($_GET["msg"])){
				include "langset/messages/".$lang["value"].".php";
				echo "<p align='center' style='color: lightgreen; font-weight: bold'>".$message[$_GET["msg"]]."</p>";
			}
			
			if(empty($_GET) || (!isset($_GET["pg"]) && isset($_GET["msg"]))){
		?>
        <div id=panel>
			<div id='nadpis'><?php echo $txt["information"] ?></div>
			<div id='txt'>
            	<table align="center" width="700px" rules="all" cellpadding="5">
                	<tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["control"] ?></td>
                        <td align="center">
						<?php
							if(@scandir("install") != false) echo "<font color='red'>Smažte prosím adresář install.</font>";
							else {
								if($connect) echo "<font color='green'>Vše je v pořádku.</font>";
								else echo "<font color='red'>Nelze navázat spojení s databází.</font>";
							}
						?>
						</td>
                    </tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["version"] ?></td>
                        <td align="center">
                        <?php
							$version = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_cmsversion'"));
							echo $version["value"];
						?>
                        </td>
                   	</tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["language"] ?></td>
                        <td align="center">
                        <?php
							$array = array("cz" => "Čeština", "sk" => "Slovenčina", "en" => "English");
							$lang = mysql_fetch_array($sql->select("value", "cms_settings", "WHERE prefix='system_language'"));
							echo $array[$lang["value"]];
						?>
                        </td>
                    </tr>
                </table>
			</div>
			<div id='panel_end'></div>
		</div>
		<div id=panel>
			<div id='nadpis'><?php echo $txt["statistics"] ?></div>
			<div id='txt'>
            	<table align="center" width="700px" rules="all" cellpadding="5">
                	<tr>
            			<td align="center" width="50%" bgcolor="#555"><?php echo $txt["numberarticle"] ?></td>
                        <td align="center">
						<?php
							$count = mysql_fetch_array($sql->select("COUNT(id) AS 'pocet'", "cms_articles"));
							echo $count["pocet"];
						?>
                        </td>
                    </tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["numbernews"] ?></td>
                        <td align="center">
                        <?php
							$count = mysql_fetch_array($sql->select("COUNT(id) AS 'pocet'", "cms_news"));
							echo $count["pocet"];
						?>
                        </td>
                    </tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["numbersubpg"] ?></td>
                        <td align="center">
						<?php
							$count = mysql_fetch_array($sql->select("COUNT(id) AS 'pocet'", "cms_pages"));
							echo $count["pocet"];
						?>
                        </td>
                    </tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["numberusers"] ?></td>
                        <td align="center">
                        <?php
							$count = mysql_fetch_array($sql->select("COUNT(id) AS 'pocet'", "cms_users"));
							echo $count["pocet"];
						?>
                        </td>
                    </tr>
                    <tr>
                    	<td align="center" width="50%" bgcolor="#555"><?php echo $txt["numbercomments"] ?></td>
                        <td align="center">
                        <?php
							$count = mysql_fetch_array($sql->select("COUNT(id) AS 'pocet'", "cms_comments"));
							echo $count["pocet"];
						?>
                        </td>
                    </tr>
                </table>
			</div>
			<div id='panel_end'></div>
		</div>
		<!--<div id=panel>
			<div id='nadpis'><?php echo $txt["lastarticles"] ?></div>
			<div id='txt'>
            	<div id="boxy">
                    <div class="box">
                    	<h1>Nadpis boxu</h1>
                        	<p>Vítr skoro nefouká a tak by se na první pohled mohlo zdát, že se balónky snad vůbec nepohybují. Jenom tak klidně levitují ve vzduchu. Jelikož slunce jasně září a na obloze byste od východu k západu</p>
                            <p class="meta">Autor: Zechy | Kategorie: Projekty | <a href=\"\">Upravit</a></p>
                    </div>
                    <div class="box">
                    	<h1>Nadpis boxu</h1>
                        	<p>Vítr skoro nefouká a tak by se na první pohled mohlo zdát, že se balónky snad vůbec nepohybují. Jenom tak klidně levitují ve vzduchu. Jelikož slunce jasně září a na obloze byste od východu k západu</p>
                            <p class="meta">Autor: Zechy | Kategorie: Projekty | <a href=\"\">Upravit</a></p>
                    </div>
                    <div class="box">
                    	<h1>Nadpis boxu</h1>
                        	<p>Vítr skoro nefouká a tak by se na první pohled mohlo zdát, že se balónky snad vůbec nepohybují. Jenom tak klidně levitují ve vzduchu. Jelikož slunce jasně září a na obloze byste od východu k západu</p>
                            <p class="meta">Autor: Zechy | Kategorie: Projekty | <a href=\"\">Upravit</a></p>
                    </div>
                    <div class="box">
                    	<h1>Nadpis boxu</h1>
                        	<p>Vítr skoro nefouká a tak by se na první pohled mohlo zdát, že se balónky snad vůbec nepohybují. Jenom tak klidně levitují ve vzduchu. Jelikož slunce jasně září a na obloze byste od východu k západu</p>
                            <p class="meta">Autor: Zechy | Kategorie: Projekty | <a href=\"\">Upravit</a></p>
                    </div>
                </div>
			</div>
			<div id='panel_end'></div>
		</div>-->
        <?php
			} else if(isset($_GET["pg"])){
				include "pgs/".$_GET["pg"].".php";
			} else if(isset($_GET["logout"])){
				$user->unsetSession($_SESSION["id"], $_SESSION["rank"]);
				$user->unsetCookie($_COOKIE["id"], $_COOKIE["rank"]);
				header("location: login.php?msg=succesLogout");
			}
		?>
	</div>
	<div id='footer'><?php echo $txt["copyright"] ?></div>
</div>
<div class="skryj"><endora></div>
</body>
</html>

Také bych doporučil přečíst si něco o CSS, třeba http://www.jakpsatweb.cz/css/css-tridy- ... ntifikator

Poznámka:
pokud používáte dlouhé tagy, pak bych se přikláněl k názoru používat je striktně všude. Tedy <?php, nikoliv jednou <?php a pak <?, dokonce v jednom a tom samém kódu!


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#18 2012-04-07 22:18:35

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Co se týče bezpečnosti z hledika SQL injection vim jenom o mysql_real_escape_string,
Vim co je CSS, jenže design neni ode mě, ten dělal designer.
co se týče tech značek, je možné že mi mohlo php ztratit.

Co se týče kodu je mi jasný, že neni perfektní, hold jsem neudržel vizi udržet si vo největší pořádek v kodu. Jenže v tuhle chvíli mi nakonec šlo jenom o funkčnost, celej kod chci pak upravit k lepší kráse  smile

Offline

#19 2012-04-07 22:52:42

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

mysql_real_escape_string pro vstup
htmlspecialchars pro výstup

třeba tady

zechy napsal:

... Co se týče kodu je mi jasný, že neni perfektní, hold jsem neudržel vizi udržet si vo největší pořádek v kodu. Jenže v tuhle chvíli mi nakonec šlo jenom o funkčnost, celej kod chci pak upravit k lepší kráse  smile

Z vlastní zkušenosti vím, že to pak není dokončeno... Na 200% pak nebude nikdo funkční "zpatlaný" kód předělávat jen proto, že není čitelný a upravený...


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#20 2012-04-07 22:59:20

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

Já to rád klidně předělám  smile .

Jinak dík za ten odkaz wink, rozhodně jsem rád, že jsem tu nasbíral nějáký poznatky co je blbě a co třeba doladit, hlavně tu bezpečnost jak vidim smile.

Offline

#21 2012-04-08 09:41:49

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

Ještě bych sjednotil registraci na stránky a do fóra.
Pokud se někdo zaregistruje na stránkách, pak by také měl být automaticky zaregistrován ve fóru, zejména pokud je na něj ze stránek přímý odkaz. Dvojí registrace asi běžné uživatele odradí...


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

#22 2012-04-08 14:23:37

zechy
Endora uživatel
Registrován: 2011-07-01
Příspěvky: 27
Web

Re: Redakční systém EasyCMS

To už by byl trochu oříšek, ale budiž big_smile

Offline

#23 2012-04-08 15:43:05

kksmirice
Endora rádce
Místo: Vrchovnice
Registrován: 2011-11-20
Příspěvky: 6,023
Web

Re: Redakční systém EasyCMS

není, u mě to funguje, pouze resynchronizaci statistik musím dělat ručně


1. Murphyho zákon:
Na počátku nebylo nic. I to se pokazilo!

stránky: CMS test
kontakt - instalace systémů, MySQL, FTP přístup, ...
Instalační balíky vybraných CSM

Problémy spojené s provozem služeb Endora, řešte na tomto fóru.

Offline

Zápatí

Založeno na FluxBB | CZ a SK