Autor | Zpráva | ||
---|---|---|---|
Mája Profil * |
#1 · Zasláno: 13. 8. 2008, 00:32:11
Ahoj,
mám vytvořenou knihu návštěv, vše by bylo v pořádku - až na to, že při převodu smajlíku na odkaz se mi to uloží ve tvaru: "<img src='smile05.gif' alt='smile' />" místo: "<img src='smile05.gif' alt='smile' />" takže pochopitelně se místo obrázku vypíše text. Prosím, co za "blbost" bych měla doplnit??? |
||
Paja Profil |
#2 · Zasláno: 13. 8. 2008, 00:40:47
obávám se, že to zrovna "blbostí" udělat nepůjde. V knize návštěv je zřejmě filtr, který odfiltrovává znaky "<" ">" .. atd. kvůli bezpečnosti návštěvní knihy .. to znamená, že do databáze nemůžete ukládat html značky a tak je to i správně.
Napravit se to dá dvěma způsoby: 1. odstranit filtr -> nedělal bych .. velice brzo by vám to někdo hacknul 2. ukládat smajlíky ve tvaru [smajlik1] a v knize doprogramovat, že pokud se tam nachází "[smajlik1]" tak se to nahradí za html |
||
Mája Profil * |
#3 · Zasláno: 13. 8. 2008, 00:50:27
<script language="javascript" type="text/javascript">
function vloz(kod,kde){ document.getElementById(kde).value += kod; } </script> <!--hlavni stranka--> <div id="page"> <div class="nadpis">...</div> <BR /> <TABLE width="95%" align="center"><TR class=kniha><TD class=kniha> <form name="form" method="post" action="kniha-pokus.php3?action=uloz"> <table> <tr><td class="text">jméno*:</td><td><input type="text" name="jmeno" size="50" /></td></tr> <tr><td class="text">e-mail:</td><td><input type="text" value="@" name="mail" size="50" /></td></tr> <tr><td class="text">web:</td><td><input type="text" value="http://" name="web" size="50" /></td></tr> <tr><td valign="top" class="text">vzkaz*:</td> <td class="text"><textarea name="vzkaz" cols="40" rows="5" id="vlozit" ></textarea></td></tr> <tr><td> </td></tr> <tr><td> </td><td valign="top"> <a onclick="vloz(' [smile00] ','vlozit');" href="javascript: vloz()"><img src="00.gif" alt="[smile00]" /></a> <a onclick="vloz(' [smile01] ','vlozit');" href="javascript: vloz()"><img src="01.gif" alt="[smile01]" /></a> <a onclick="vloz(' [smile02] ','vlozit');" href="javascript: vloz()"><img src="02.gif" alt="[smile02]" /></a> <a onclick="vloz(' [smile03] ','vlozit');" href="javascript: vloz()"><img src="03.gif" alt="[smile03]" /></a> <a onclick="vloz(' [smile04] ','vlozit');" href="javascript: vloz()"><img src="04.gif" alt="[smile04]" /></a> <a onclick="vloz(' [smile05] ','vlozit');" href="javascript: vloz()"><img src="05.gif" alt="[smile05]" /></a> <a onclick="vloz(' [smile06] ','vlozit');" href="javascript: vloz()"><img src="06.gif" alt="[smile06]" /></a> <a onclick="vloz(' [smile07] ','vlozit');" href="javascript: vloz()"><img src="07.gif" alt="[smile07]" /></a> <a onclick="vloz(' [smile08] ','vlozit');" href="javascript: vloz()"><img src="08.gif" alt="[smile08]" /></a> <a onclick="vloz(' [smile09] ','vlozit');" href="javascript: vloz()"><img src="09.gif" alt="[smile09]" /></a> <br /> <a onclick="vloz(' [smile10] ','vlozit');" href="javascript: vloz()"><img src="10.gif" alt="[smile10]" /></a> <a onclick="vloz(' [smile11] ','vlozit');" href="javascript: vloz()"><img src="11.gif" alt="[smile11]" /></a> <a onclick="vloz(' [smile12] ','vlozit');" href="javascript: vloz()"><img src="12.gif" alt="[smile12]" /></a> <a onclick="vloz(' [smile13] ','vlozit');" href="javascript: vloz()"><img src="13.gif" alt="[smile13]" /></a> <a onclick="vloz(' [smile14] ','vlozit');" href="javascript: vloz()"><img src="14.gif" alt="[smile14]" /></a> <a onclick="vloz(' [smile15] ','vlozit');" href="javascript: vloz()"><img src="15.gif" alt="[smile15]" /></a> <a onclick="vloz(' [smile16] ','vlozit');" href="javascript: vloz()"><img src="16.gif" alt="[smile16]" /></a> <a onclick="vloz(' [smile17] ','vlozit');" href="javascript: vloz()"><img src="17.gif" alt="[smile17]" /></a> <a onclick="vloz(' [smile18] ','vlozit');" href="javascript: vloz()"><img src="18.gif" alt="[smile18]" /></a> </td></tr> <tr><td class="text"><b>důležité!</b></td><td class=text>- kolik dní má týden (napsat číslovku)*:</td></tr> <tr><td></td><td><input type="text" name="dulezite" size="50" /></td></tr> <tr><td></td> <td class="text">jinak nebude vzkaz odeslán - proti nežádoucím reklamním zmetkům:)</td></tr> <tr><td></td><td><input type="submit" value="odeslat"></td></tr> <tr><td></td><td><hr></td><td></td></tr> </table> </form> <?php function Preved($zprava){ $zprava=stripslashes($zprava); $find=array ( "\n", "[smile00]", "[smile01]", "[smile02]", "[smile03]", "[smile04]", "[smile05]", "[smile06]", "[smile07]", "[smile08]", "[smile09]", "[smile10]", "[smile11]", "[smile12]", "[smile13]", "[smile14]", "[smile15]", "[smile16]", "[smile17]", "[smile18]", "","", "[u]","[/u]", "","", "[kod]","[/kod]" ); $replace=array ( "<br />", "<img src=\"smile00.gif\" alt=\"smile\" />", "<img src=\"smile01.gif\" alt=\"smile\" />", "<img src=\"smile02.gif\" alt=\"smile\" />", "<img src=\"smile03.gif\" alt=\"smile\" />", "<img src=\"smile04.gif\" alt=\"smile\" />", "<img src=\"smile05.gif\" alt=\"smile\" />", "<img src=\"smile06.gif\" alt=\"smile\" />", "<img src=\"smile07.gif\" alt=\"smile\" />", "<img src=\"smile08.gif\" alt=\"smile\" />", "<img src=\"smile09.gif\" alt=\"smile\" />", "<img src=\"smile10.gif\" alt=\"smile\" />", "<img src=\"smile11.gif\" alt=\"smile\" />", "<img src=\"smile12.gif\" alt=\"smile\" />", "<img src=\"smile13.gif\" alt=\"smile\" />", "<img src=\"smile14.gif\" alt=\"smile\" />", "<img src=\"smile15.gif\" alt=\"smile\" />", "<img src=\"smile16.gif\" alt=\"smile\" />", "<img src=\"smile17.gif\" alt=\"smile\" />", "<img src=\"smile18.gif\" alt=\"smile\" />", "<strong>","</strong>", "<u>","</u>", "<em>","</em>", "<div class='zdrojak'>","</div>"); $zprava=str_replace($find, $replace, $zprava); return $zprava; } if ($action=='uloz'): $soubor = "kniha-pokus.body"; @$ext = fopen($soubor, "r"); @$obsah = fread($ext, filesize($soubor)); @FClose($ext); if (($vzkaz=="") or ($jmeno=="") or ($dulezite<>"7")): echo "<h6>Nejsou vyplněny požadované údaje</h6>"; else: $ext = fopen("kniha-pokus.body", "w"); $mail = HTMLSpecialCHars($mail); $web = HTMLSpecialCHars($web); if($mail == "@") $mail = ""; else $mail = "<a href=\"mailto:$mail\">".$mail."</a>"; if($web == "http://") $web = ""; else $web = "<a href=$web>".$web."</a>"; $vzkaz = Preved($vzkaz); $jmeno = HTMLSpecialCHars($jmeno); |
||
Mája Profil * |
#4 · Zasláno: 13. 8. 2008, 00:58:30
Odkaz na www-stránky i mail se ukládá totiž v pohodě....
|
||
kletely Profil |
#5 · Zasláno: 13. 8. 2008, 09:41:54
Mája
Skús dať funkciu HTMLSpecialCHars() ešte pred $zprava=str_replace($find, $replace, $zprava); |
||
Mája Profil * |
#6 · Zasláno: 13. 8. 2008, 10:19:43
díky všem, já jsem nakonec udělala ještě jednu funkci na převod a vložila ji tam, kde se ukládá do tabulky ten vzkaz - a funguje to :)) Já mám takovou radost :-P
|
||
Časová prodleva: 16 let
|
0