Header - location
|
21.8.2004 11:25
Petr Zajíc
|
Rád bych se zkritizoval sám - vůbec jsem nevysvětlil, proč tak složitě na konstrukci url v hlavičce location. Je to proto, že dle normy by url mělo býti absolutní. A jestliže by mělo, proč to tak neudělat, že? |
|
|
Re: Header - location
|
3.10.2008 23:22
Petr Stodůlka
|
Chtěl byhc upozornit, že tento zápis bude funkční pouze pokud budete mít povoleny globální proměnné(zmínka je o nich i někde v pozdější fázi seriálu). Jde o to, že je lepší je mít vypnuty. Takže :
$path=SubStr($SCRIPT_NAME, 0, StrRPos($SCRIPT_NAME,"/"))."/40_select.php";
Header("Location: http://".$_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$path);
nahradíte například:
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$soubor = '40_select.php';
header("Location: http://$host$uri/$soubor"); |
|
|
xhtml a php
|
22.8.2004 03:32
Pavel Bařina
|
Dobry den, mel bych otazku trosku mimo tema tohohle dilu. Nemuzu prijit na to jak pouzit v php xhtml. Konkretne mam soubor index.php slozeny pomozi require ze dvou dalsich souboru header.inc a footer.inc. Problem je s :
<?xml version="1.0" encoding="iso-8859-2"?>
Php hlasi parse error pokusimli se tento uvodni tag vlozit do php souboru. Dekuji moc za pomoc. |
|
|
Re: xhtml a php
|
22.8.2004 09:28
Pavel Kácha
|
Dobry den.
Pokud jsem dobre pochopil Vas dotaz, vkladate do php souboru radek <?xml version="1.0" encoding="iso-8859-2"?>. To ani projit nemuze, protoze php povazuje znaky <? a ?> za zacatek a konec casti sveho scriptu.
Pokud chcete, aby ve vystupnim souboru byla xml hlavicka zkuste použít
echo "<?xml version=\"1.0\" encoding=\"iso-8859-2\"?>";
|
|
|
Re: xhtml a php
|
22.8.2004 12:48
Jan Houštěk
|
Já to asi pochopil. Nastavte si v php.ini short_open_tag=Off. PHP pak bude parsovat jen <?php, ?>, což je zpusob kombatibilní s XML (resp. XHTML). Ostatně slušní lidé toto používají již dávno, od <?, ?> se postupně ustupuje (např. kvuli XML a proto, že to někdy je vypnuté), <?php, ?> má tu výhodu, že jednak funguje vždy, a jednak je na první pohled jasné, o jaký jazyk se jedná. |
|
|
Re: xhtml a php
|
22.8.2004 13:44
Pavel Bařina
|
Dekuji moc za odpovedi. Uz jsem to vyresil pomoci echo a zpetneho lomitka. Nicmene reseni pomoci php.ini se mi zda nejrozumnejsi. Bude jen taky zalezet jak to ma nastavene muj poskytovatel webhostingu :-) |
|
|
Re: xhtml a php
|
22.8.2004 22:43
Petr Zajíc
|
Už jsem za to byl jednou plísněn. <?php ?> je opravdu lepší, budu se to snažit používat. Je pravda, že donutit webmastery některých serverů přenastavit php.ini je výkon, ale tohle bude fungovat i když se php.ini nepřenastaví.
Pozn.: Pokud se s webmasterem dohodnete, pozor na to, abyste neměl <??> ještě v době, kdy už bude parsování přepnuto... to byl lidi viděli vaše zdrojové kódy, což asi není to, co chcete. |
|
|
Re: xhtml a php
|
26.8.2004 22:50
Michal Kubeček
|
Promiň, ale tento postoj nemohu při nejlepší vůli označit jinak než jako pozérství. Přísnost k sobě má něco do sebe tam, kde je k ní důvod, třeba u XHTML oproti HTML, nastavení error_reporting na E_ALL apod., ale tohle opravdu není ten případ. Nutit se psát zbytečně po všech skriptech asymetrické '<?php' místo přehlednějšího a symetrického '<?' jen proto, abych si ušetřil jedno echo (a podotýkám, že u mne by to obvykle bylo jedno echo na web, ne jedno na skript), v tom opravdu žádný přínos nevidím. Pokud "slušnost" spočívá v tomto, pak se nestydím za to, že jsem "neslušný". |
|
|
Re: xhtml a php
|
4.10.2008 08:12
Jakub 'NOclipus' Lédl
|
Proč psát asimetrické "<?php ?>" ? Kvůli důvodům nahoře - XML, nastavení php.ini( přemluvit jednoho webmástra jde, ovšem pokud programujete open-source redakční systém, který budou používat různí lidé na různých hostinzích...) Nechápu, proč je varinata s php "přehlednější" než "<? ?>"? Vždyť většina slušných editorů typu PSPad, Bluefish vám dává možnost označit si barevně bloky PHP od bloků HTML. Navíc, pokud se snažíte psád kód přehledně, odsazovat apod. neí v přehlednosti mezi "<?php ?>" a "<? ?>" žáný rozdíl. |
|
|
Há?ky a ?árky v MySQL
|
23.10.2005 16:50
Jan Šmucr
|
Zdravim. Mam balik EasyPHP s Apache 1.3.33, PHP 4.3.1, phpMyAdmin 2.6.1 a MySQL 4.1.9.
Zkoušel jsem si /částečně podle návodu/ rovněž vytvořit knihu návštěv. Vše se povedlo, ale bohužel mi nefungovaly háčky a čárky u některých písmen. Chvíli jsem se hrabal v phpMyAdminovi a nakonec se mi povedlo mysql donutit, aby zapisovalo do databází veškerou diakritiku správně. Bohužel, jak jsem později zjistil, slovo "veškerou" je poněkud přehnané. Nefunguje totiž písmeno ť. Jako jediné. Poraďte pls, co mám kde nastavit, aby úplně (!) vše fungovalo bez problémů. |
|
|
tabulka v databázi
|
28.7.2006 22:22
spageta
|
PHP se teprve učím a tento díl o MySQL jsem moc nepochopila. V jakém ze tří skriptů mám založit tabulku v databázi kniha_hostů?? |
|
|
Re: tabulka v databázi
|
28.7.2006 23:09
Ondřej Čečák
|
Pokud vidim spravne, neni vytvarena zadnym ze zminenych tri skriptu, staci ji vytvorit SQL prikazem CREATE TABLE zminenym na zacatku.
|
|
|
Re: tabulka v databázi
|
29.7.2006 20:56
Petr Zajíc
|
Ano, tabulku je třeba vytvořit ručně. Může se na to jít rovněž pomocí skriptu, ale pro jednoduchost jsem to udělal takhle. Jde o to, že skript, který by tabulku vytvářel by musel taky zjišťovat, jestli už neexistuje. Prostě, kus článku by byl o něčem jiném a to se mi nechtělo. |
|
|
Polozka \\
|
12.3.2007 21:17
Michal Bůžek
|
Ted jsem si s tim hral a zjistil jsem, ze neni asi idealni zjistit pri prvnim zobrazeni kolik je prispevku a pak to dat do url (metoda GET). Potom kdyz dam aktualizovat stranku, nebo na ni znovu prejdu, tak se ten pocet nezmeni i kdyz treba mezitim nekdo prispival.
Udelal jsem to tak, ze jsem dal to zjistovani pri kazdem zobrazeni stranky. Snad to tomu serveru moc nevadi. :-)
URL je potom kratsi, ale zase kdyz nekdo da nekomu odkaz na dskuzi a mezitim tam nekolik lidi prispiva, tak se ten prispevek posune na dalsi stranku Tezko rict co je lepsi. Nejlepsi bude udelat tam tlacitko link a to vrati link primo na prispevek, ale to jeste nevim jak.
A jeste takovej detail - href odkazu "zacatek" muze byt jen "select.php" bez parametru od=1 :-] |
|
|
Re: Polozka \\\\
|
12.3.2007 21:50
Michal Bůžek
|
Ja sem si splet konec se zacatkem (v clanku pred timhle to bylo razeny opacne) takze kdyz nekdo bude prispivat a ja kliknu na "konec" tak pak se nezobrazi ty uplne posledni, protoze je spatne udanej celkovej pocet (zvysil se a v url je porad stejnej) |
|
|
duplicitní vložení
|
5.1.2008 15:08
slune
|
Zdravičko,
chtěl bych Vás požádat o radu, jde o problém, kdy se mi do tabulky vkladá druhý duplicitní řádek, který tam nemá co dělat.
Schéma tabulky je:
Dovednosti (IDPostavy, TypSkillu, IDSkillu, Lvl)
Kde IDPostavy je index a IDSkillu je take index, relace nejsou nastaveny s ostatními tabulky.
Skript nevytváří smyčku, takže celý jej sem psát nebudu, jen příkaz:
$zapis = mysql_query("INSERT INTO Dovednosti (IDPostavy,TypSkillu,IDSkillu,NaLvl) VALUE ('".$_SESSION['IDPostavy']."','".$_GET['typ']."','".$_GET['id']."','1')");
A právě v tomto příkazu je problém.
Můžete mi říct, proč se vkládá druhý duplicitní řádek? |
|
|
Smajlíci
|
27.2.2008 21:04
hynek jj
|
Cau jak tam pridat treba smajlíky ??? |
|
|
Kniha hostů a uvozovky.
|
6.1.2009 18:10
Pavel Zvěřina
|
Použil jsem Knihu hostů (po patřičném ostylování a jiných úpravách) na svých stránkách, ale pořád nemůžu přijít na to, jak zprovoznit uvozovky. I když v .htacces nastavím get_magic_quotes_gpc Off, tak se uvozovky zobrazí správně jen při náhledu. Když stisknu tl. Zpět, tak se už nezobrazí a při vložení do databáze se taky neuloží. |
|
|
Re: Kniha hostů a uvozovky.
|
30.1.2009 21:42
Petr Stodůlka
|
Záleží na tom jaké uvozovky teď máte na mysli. Jeslti jednoduché apostrofy nebo klasické uvozovky. Doporučil bych vám projít funkce addslashes a stripslashes. V případě, že máte na mysli klasické uvozovky se ještě podívejte na funkci htmlspecialchars. |
|
|
Re: Kniha hostů a uvozovky.
|
1.2.2009 22:31
Pavel Zvěřina
|
Tak děkuji za nasměrování. Při echo jsem použil htmlspecialchars a při ukládání do databáze addslashes a už fungují jak uvozovky, tak apostrofy. |
|
|
Re: Kniha hostů a uvozovky.
|
27.2.2010 14:56
Jan Quagmire
|
Rád bych věděl, jak to děláš, mě uvozovky (ani jedny) nefungují. Projel jsem to htmlspecialchars, addslashes i stripslashes a po klinutí na tlačítko Zpět se v poli nezobrazí původí text, ale text plný \.
Když do pole text napíšu =" (rovná se a za tím normální uvozovky) , tlačítko Zpět se nezobrazí. |
|
|
Není tam bezpečnostní díra?
|
30.4.2011 15:08
Patrick "Kusoš" Kusebauch
|
Není problémem fakt, že to, co je odesláno jako příspěvek je kontrolováno jen ve druhém souboru, ale v souboru, kde vkládám do databáze ne? Když si zobrazím zdrojový kód 2. souboru s kontrolou, tak bych si podle něho mohl vytvořit parazitický formulář, ne? A pak díky němu poslat do databáze SQL injection, jak jste psal v jednou z minulých dílů. Navíc, když ani není ošetřeno, že obsah pole post přišel právě z druhé stránky a ne z jiné, nebo že jste nějak "neoslashoval" (jak já říkám - prostě předat to nějak v uvozovkách podle verze PHP tak, aby se nemohl provést případný kód) obsah $_POST["vzkaz"]. Jen se chci zeptat, jestli tam tu díru vidím správně, nebo to je nějak někde ošetřeno a já to tam nevidím.
Samozřejmě chápu, že jde pouze o výukové scripty, které asi toto neřeší, ale zajímalo by mě, jestli by ten script šel nasadit do ostrého provozu, protože drtivá většina scriptů napsaných v tomto seriálu by šli, za což jsem opravdu rád. |
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|