Nejste přihlášeni
Stránky 1
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
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
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
Offline
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
Offline
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
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
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
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
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 .
Offline
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,
... Hlavně, programátora kolikrát ani nenapadne to co uživatele, takže každej postřeh na chybu vítám .
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
podle mě je to jako v češtině a jakymkoliv jinym jazyce
je pak akorát vidět, že neumíš psát bez chyb
W3C validator | Performance tools | Stavové kódy HTTP | Fiddle | Codepen | Ideone | XAMPP
Offline
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!!!
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
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
Offline
mysql_real_escape_string pro vstup
htmlspecialchars pro výstup
třeba tady
... 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
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
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
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
Stránky 1