Autor | Zpráva | ||
---|---|---|---|
lenkasui Profil |
#1 · Zasláno: 21. 10. 2007, 17:38:39
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 |
#2 · Zasláno: 21. 10. 2007, 17:39:37
hadaji se asi tyto radky:
setcookie('login', $_REQUEST['login'], time()+900); setcookie('heslo', $_REQUEST['heslo'], time()+900); |
||
djlj Profil |
#3 · Zasláno: 21. 10. 2007, 17:41:22
V řádku 18 souboru knihadatabaze.inc máš nějaký výstup.
Mimochodem k čemu je na konci to while (false);? |
||
lenkasui Profil |
#4 · Zasláno: 21. 10. 2007, 17:45:00
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 |
#5 · Zasláno: 21. 10. 2007, 17:47:05
Za ?> máš s největší pravděpodobností prázdný řádek.
|
||
lenkasui Profil |
#6 · Zasláno: 21. 10. 2007, 17:50:08
: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 |
#7 · Zasláno: 21. 10. 2007, 17:52:51
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 · 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 |
#8 · Zasláno: 21. 10. 2007, 17:56:43
Po připojení k databázi proveď: mysql_query("SET NAMES `utf8`");
|
||
lenkasui Profil |
#9 · Zasláno: 21. 10. 2007, 18:02:33
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 |
#10 · Zasláno: 21. 10. 2007, 18:18:52
Nedávej to znovu do mysql_query!
|
||
lenkasui Profil |
#11 · Zasláno: 21. 10. 2007, 18:41:54
co to znamená, nedávej to znovu do mysql query?
|
||
lenkasui Profil |
#12 · Zasláno: 21. 10. 2007, 19:18:45
už jsem to tam napsala bez mysql querry a funguje to, jen místo písmena "š" je ještě čtvereček
|
||
djlj Profil |
#13 · Zasláno: 21. 10. 2007, 20:02:47
Ajo, no jasně. Místo utf8 si dosaď tvé kódování.
|
||
lenkasui Profil |
#14 · Zasláno: 21. 10. 2007, 20:16:34
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 |
#15 · Zasláno: 21. 10. 2007, 20:17:25
to nefunguje SET CHARACTER SET cp1250
|
||
djlj Profil |
#16 · Zasláno: 21. 10. 2007, 20:19:35
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 |
#17 · Zasláno: 21. 10. 2007, 20:24:24
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 |
#18 · Zasláno: 21. 10. 2007, 20:30:56
v phpmyadmin mam u tabulky napsane:
Formát dynamický Porovnávání latin1_general_ci Řádků 2 Délka řádku ø 46 Velikost řádku ø 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 |
#19 · Zasláno: 21. 10. 2007, 20:38:44
Jo, latin1.
|
||
lenkasui Profil |
#20 · Zasláno: 21. 10. 2007, 20:46:55
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 |
#21 · Zasláno: 21. 10. 2007, 20:48:11
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 |
#22 · Zasláno: 21. 10. 2007, 21:00:18
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 |
#23 · Zasláno: 21. 10. 2007, 21:02:37
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 |
#24 · Zasláno: 21. 10. 2007, 21:04:17
Kdes to kódování přepla? To nastav v editoru, ve kterém stránky tvoříš.
|
||
lenkasui Profil |
#25 · Zasláno: 21. 10. 2007, 21:08:18
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 |
#26 · Zasláno: 21. 10. 2007, 21:09:29
|
||
lenkasui Profil |
#27 · Zasláno: 21. 10. 2007, 21:18:22
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 |
#28 · Zasláno: 21. 10. 2007, 21:22:07
Pro jistotu bych to asi dal na všechny stránky. Není zač ;).
|
||
lenkasui Profil |
#29 · Zasláno: 21. 10. 2007, 21:24:21
dobře, udělám to tak, děkuju moc
|
||
Časová prodleva: 17 let
|
0