Autor Zpráva
lenkasui
Profil
prvni:
<HTML>
<HEAD>
<TITLE>Přihlašovací formulář</TITLE>
</HEAD>
<BODY>
<H2>Redakční systém časopisu</H2>
<FORM method="post" action="redakce.php">
<H2></H2>
<TABLE width="300" border="0">
<TR>
<TD><B>Uživatelské jméno:</B></TD>
<TD><INPUT type="text" name="login" size="20"></TD>
</TR>
<TR>
<TD><B>Heslo:</B></TD>
<TD><INPUT type="password" name="heslo" maxlength="10" size="20"></TD>
</TR>
<TR>
<TD></TD>
<TD><INPUT type="submit" value="Přihlásit"></TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>






druhy:
<?php
do
{
require_once('../databaze.inc');

// Připojení k databázi.
if (!databaze())
break;
$autoři = mysql_query(
"SELECT id_autora, jmeno, heslo, vedouci FROM autori WHERE"
. " login='{$_REQUEST['login']}'");
if (!$autoři)
{
echo "Problém s redakčním systémem.";
exit;
}
// Kontrola přihlašovacího jména a hesla.
if(!mysql_num_rows($autoři))
{
echo "Neznámý uživatel.";
exit;
}
else
{
if (mysql_result($autoři,0, "heslo") != $_REQUEST["heslo"])
{
echo "Neplatné heslo.";
exit;
}
}
setcookie('login', $_REQUEST['login'], time()+900);
setcookie('heslo', $_REQUEST['heslo'], time()+900);
?>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Windows 1250">
</HEAD>
<BODY>
<H2>Redakční systém:
<?
echo mysql_result($autoři, 0, "jmeno");
if (mysql_result($autoři, 0, "vedouci") =='true')
echo " (šéfredaktor)";
else
echo " (redaktor)";
?>
</H2>
<TABLE>
<TR>
<TD><A href="odhlas.php">Odhlášení</A></TD>
<TD style="font:bold"><A href="novy_clanek.php">Nový článek</A></TD>
</TR>
</TABLE>

<?php
// Je to šéfredaktor?
if (mysql_result($autoři, 0, "vedouci") !='true')
{
$idAutora=mysql_result($autoři, 0, "id_autora");
$sql=
"SELECT id_clanku, nazev, datum, autor FROM clanky "
. " WHERE autor='$idAutora' ORDER BY id_clanku DESC LIMIT 0,10";
}
else
$sql=
"SELECT id_clanku, nazev,datum FROM clanky"
. " ORDER BY id_clanku DESC LIMIT 0,10";

$výsledek = mysql_query("$sql");
?>
<TABLE width="100%" border="0" cellspacing="2" cellpadding="0">
<?while($zaznam=mysql_fetch_array($výsledek)){?>
<TR style="background: cyan">
<TD>
<TABLE><TR>
<TD><?echo $zaznam["nazev"];?></TD>
<TD width="80">
<FORM method="post" action="editace_clanku.php">
<TABLE align="right">
<TR>
<TD>
<DIV align="center">
<input type="hidden" name="IDCL"
value="<?echo $zaznam["id_clanku"];?>">
<input type="submit" name="edituj" value="Edituj">
</DIV>
</TD>
</TR>
</TABLE>
</FORM>
</TD>
<TD width="80">
<FORM method="post" action="mazani_clanku.php">
<TABLE align="right">
<TR>
<TD>
<DIV align="center">
<INPUT type="hidden" name="IDCL"
value="<?echo $zaznam['id_clanku'];?>">
<INPUT type="submit" value="Vymazat">
</DIV>
</TD>
</TR>
</TABLE>
</FORM>
</TD>
</TR>
</TABLE>
</TD>
</TR>
<?}?>
</TABLE>
<?
mysql_close();
} while (false);
?>
</BODY>
</HTML>


Píše mě to:
Warning: Cannot modify header information - headers already sent by (output started at C:xampphtdocsPHPknihadatabaze.inc:18) in C:htttsamplePHPkniha edakce edakce.php on line 31

Četla jsem si příspěvky na toťto téma, ale nic zatím nepomohlo,ani mazání bílých míst,poraďte prosím Vás.
Je to z knihy PHP a MYsql.
lenkasui
Profil
hadaji se asi tyto radky:

setcookie('login', $_REQUEST['login'], time()+900);
setcookie('heslo', $_REQUEST['heslo'], time()+900);
djlj
Profil
V řádku 18 souboru knihadatabaze.inc máš nějaký výstup.

Mimochodem k čemu je na konci to while (false);?
lenkasui
Profil
DJLJ děkuju,

knihadatabaze.inc nema ani 18 řádků:

<?php
function OtevriDB($hostitel = "localhost", $uziv_jmeno = "localhost", $heslo = "",
$DB = "casak")
{
$navratova_hodnota = false;
$spojeni = mysql_connect($hostitel, $uziv_jmeno, $heslo);
if(!$spojeni)
echo "Nepodařilo se vytvořit spojení s hostitelem $hostitel!";
else {
$navratova_hodnota = mysql_select_db($DB);
if (!$navratova_hodnota)
echo "Nepodařilo se nastavit pracovní databázi $DB!";
}
return $navratova_hodnota;
}
?>


popravde, k cemu je while false vubec nevim, jdu z kn¨ížky krok za krokem
djlj
Profil
Za ?> máš s největší pravděpodobností prázdný řádek.
lenkasui
Profil
:o)
:o)
:o)
:o)
:o)
:o)
:o) :o) :o) :o) :o) :o) :o) :o) :o) :o) :o) :o) :o) :o)

DĚKUJIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIiiiii DJLJ celý problém byl jen ve dvou neviditelných řádcích na konci celého
textu, teda kódu, jeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
už to funguje děkujiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii, vše se vyřešilo vymazáním těch dvou řádků
děkuji si úžasnýýýýýý
lenkasui
Profil
Ještě mám otázku, píše mi to špatně češtinu a některé písmenka vůbec, hledala jsem tady ve foru a nasla jsem tohle:

Zdravím, mám následující problém:
pokud do tabulky uložím string s diakritikou, neuloží se celý, ale utne se v místě kde se objeví první znak s diakritikou. Např. z "kulový blesk" to udělá "kulov". dělá mi to na jen na jednom hostingu, na jiném to zase jede bez problémů, ale já to potřebuji na tom prvním :| zkoušel jsem všechny možné znakové sady, ale bezvýsledně. Nevíte někdo, jak se toho zbavit?
Verze MySQL: 5.0.45
djlj
Člen

Zasláno: 9.10.2007 21:01:25


Máš špatně nastavené kódování. Použij SET NAMES.
deter
Člen

Zasláno: 9.10.2007 21:11:05 &middot; Změnil/a: deter


ok, už to šlape, díky moc.





kde prosím najdu soubor nebo kde můžu dobře nastavit češtinu?
djlj
Profil
Po připojení k databázi proveď: mysql_query("SET NAMES `utf8`");
lenkasui
Profil
djlj, pise mi to v mysql:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
_query("SET NAMES `utf8`")' at line 1
djlj
Profil
Nedávej to znovu do mysql_query!
lenkasui
Profil
co to znamená, nedávej to znovu do mysql query?
lenkasui
Profil
už jsem to tam napsala bez mysql querry a funguje to, jen místo písmena "š" je ještě čtvereček
djlj
Profil
Ajo, no jasně. Místo utf8 si dosaď tvé kódování.
lenkasui
Profil
a to je ktere djlj, kde ho najdu, prosim?



zkousim tam ted dat
SET CHARACTER SET cp1250
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=9&topic=51 615
lenkasui
Profil
to nefunguje SET CHARACTER SET cp1250
djlj
Profil
Používej SET NAMES. Sama musíš vědět, v jakém kódování máš data uložena. V PMA to vidíš přímo ve výpisu sloupců u každé tabulky.
lenkasui
Profil
to je zajímavé:
v redakční části pro registrované uživatele mám češtinu v pořádku: tam kde vkládám články

a

v online části na localhostu, kde mám náhled už jakoby na internetu mám češtinu zkomolenou
lenkasui
Profil
v phpmyadmin mam u tabulky napsane:

Formát dynamický
Porovnávání latin1_general_ci
Řádků 2
Délka řádku &oslash; 46
Velikost řádku &oslash; 1 070 B
Další Autoindex 3
Vytvoření Sobota 20. října 2007, 17:32
Poslední změna Sobota 20. října 2007, 17:32


to latin je kodovani?
djlj
Profil
Jo, latin1.
lenkasui
Profil
Když dám SET NAMES ´latin1´

vejdu do redakcniho szstemu a vložím článek,
pak aktualizuju pohled už v localhostu, abych zkontrolovala, jak se mi zobrazil,

tak se opět nic nestalo, pořád tam nejsou některé písmenka a háčky a čárky
djlj
Profil
Je to ` a ne ´. Jinak bude možná i problém v tom, že plácáš dohromady různá kódování. Jaké používáš na stránkách?
lenkasui
Profil
Měla jsem nastavené na stránkách kódování:

automatický výběr: středoevropské jazyky DOS, tak jsem to přepla na:

středoevropské jazyky windows a vypla jsem automaticky vyber kodovani, protoze
pokud mam automaticky vyber zapnuty, tak se mi to vzdy kdyz aktualizuju prehodi zpet na
středoevropské jazyky DOS

Doufam, ze to je standardni postup, ze vypnu automaticky vyber a nastavim to na stredoevropske jazyky windows,
neznicim tim nejak nasatveni internetu?


jinak pokud to tak muze byt , je to krása, je to čitelné přesně jak má být :o) :o) dekuji DJLJ :o) :o)
lenkasui
Profil
co kdyz ale ten kdo se bude divat na tyto stranky, nejaky uzivatel, tak si bude muset prepinat kodovani na strankach? Nebo je mym ukolem, abych to nastavila spravne? Kazdy nevi, ze si muze prepnout kodovani na strankach?
djlj
Profil
Kdes to kódování přepla? To nastav v editoru, ve kterém stránky tvoříš.
lenkasui
Profil
Kodovani jsem prepla v internet exploreru , kdyz jsem klikla pravym tlacitkem mysi, pak kodovani a klikla na stredoevropske windows,
pak se ta stranka zobrazila spravne.

jinak stranky tvorim, teda kopiruju jen do textoveho editoru : NOTEPADU
tohle je kod te stranky, co se zobrazuje spatne:

<html>
<head>
<title>Publikační portál</title>
</head>
<body>
<h1 style="color: blue">Internetový časopis</h1>
<?php
require_once('databaze.inc');

do
{
// Připojení k databázi.
if (!OtevriDB()) break;

$dnes = Date ("YmdHis");

@$výsledek = mysql_query(
"
SELECT clanky.id_clanku, autori.jmeno, autori.email,
cesta,clanky.rubrika, rubriky.rubrika, clanky.nazev,
uvodnik, pristupy, UNIX_TIMESTAMP(datum) as datumcas
FROM clanky, autori, rubriky, pocitadlo
WHERE clanky.autor = autori.id_autora AND
clanky.id_clanku = pocitadlo.id_clanku AND
clanky.rubrika = rubriky.id_rubriky AND
clanky.autor = autori.id_autora AND
clanky.datum <= $dnes
ORDER BY datum DESC;

") or die("chyba");

while($záznam=mysql_Fetch_array($výsledek))
{
$datum = strftime("%d %m %Y", $záznam["datumcas"]);
$data = "<p><b> ";
$data .= $datum;
$data .= "</b> - <a href="mailto:". $záznam["email"]
. ""><b>". $záznam["jmeno"]. "</b></a> - ";
$data .= $záznam["rubrika"]." ";
$data .= "<a href=""."/PHPkniha". $záznam["cesta"]
. "clanek.php?ID=". $záznam["id_clanku"]. "">";
$data .= "<b>". $záznam["nazev"]."</b></a> (". $záznam["pristupy"]
. ")<br> ";
$data .= $záznam["uvodnik"]." ";
echo $data;
}
mysql_close();
} while (false);
?>
</body>
</html>
djlj
Profil
http://www.jakpsatweb.cz/cestina.html
lenkasui
Profil
Dala jsem před <title>
tento řádek:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">

pak jsem stránku aktualizovala a všechno je teďka čitelné, je to v tom, děkuju za trpělivost DJLJ

nechápu, že se to stalo zrovna u této stránky.Ostatní stránky tento řádek nemají a zobrazují se v pořádku.
Důležité je, že víme, jak se to opraví.
:o)
děkuju
djlj
Profil
Pro jistotu bych to asi dal na všechny stránky. Není zač ;).
lenkasui
Profil
dobře, udělám to tak, děkuju moc

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: