Autor | Zpráva | ||
---|---|---|---|
Doom4 Profil * |
#1 · Zasláno: 29. 1. 2006, 17:17:20
Dobry den mam takovy problem :D kdyz zadam smajli tak se mi jednak zobrazi jako textove teda *1* a pak hned zatim obrazek ale ja potreubju zobrazit jen obrazek a pak dalsim problemem je ze se mi v kazdem prizveku meni smajli nevite co s tim ? :-(
if ($send && $text != ""): // pokud byly odeslány data // odstraníme z příspěvku HTML tagy $text = HTMLSpecialChars($text); $cas = date("d-m-Y H:i:s"); // vlo�íme příspěvek do databáze @$f = mysql_query ("INSERT INTO guestbook VALUES ('','$jmeno','$email','$nazev','$text','$cas')"); endif; ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> <title>Kniha náv�těv</title> </head> <body bgcolor="#FFFFFF"> <div align="center"><center> <table border="0" width="30%"> <tr> <td><div align="center"><center><table border="0"><FORM name="formular" ACTION="guestbook.php" METHOD="POST"><INPUT TYPE=HIDDEN NAME="send" VALUE="true"> <tr> <td><strong>Jméno:</strong></font></td> <td><strong><input type="text" size="30" name="jmeno"></strong></font></td> </tr> <tr> <td><strong>E-mail:</strong></font></td> <td><strong><input type="text" size="30" name="email"></strong></font></td> </tr> <tr> <td><strong>Nadpis:</strong></font></td> <td><strong><input type="text" size="30" name="nazev"></strong></font></td> </tr> <tr> <td><strong>Text:</strong></font></td> <td><strong><textarea name="text" rows="2" cols="30" name="text1"></textarea></strong></font></td> </tr> <tr> <td colspan="2"><center><input type="submit" value="Odeslat"></center></td></form> </tr> </table> </center></div></td> </tr> </table> <table> <tr> <td>Smajly:</td> <td align="center"> </td> </tr> </table> </center></div> </table> </center></div> <script> function add(neco) { document.formular.text.value = document.formular.text.value + ' '+neco+' '; document.formular.text.focus(); }; bla = true; function replace(necojinyho) { if (bla) { document.formular.text.value = document.formular.text.value + '[' + necojinyho + ']'; document.formular.text.focus(); } if (!bla) { document.formular.text.value = document.formular.text.value + '[/' + necojinyho + ']'; document.formular.text.focus(); } bla = !bla; }; </script> <center> <table> <tr> <td>Smajly:</td> <td align="center"> <a href="javascript:add('*1*');" title="*1*"><img src="./smajly/01.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*2*');" title="*2*"><img src="./smajly/02.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*3*');" title="*3*"><img src="./smajly/03.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*4*');" title="*4*"><img src="./smajly/04.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*5*');" title="*5*"><img src="./smajly/05.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*6*');" title="*6*"><img src="./smajly/06.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*7*');" title="*7*"><img src="./smajly/07.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*8*');" title="*8*"><img src="./smajly/08.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*9*');" title="*9*"><img src="./smajly/09.gif" width="15" height="15" border="0"></a> <br> <a href="javascript:add('*10*');" title="*10*"><img src="./smajly/10.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*11*');" title="*11*"><img src="./smajly/11.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*12*');" title="*12*"><img src="./smajly/12.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*13*');" title="*13*"><img src="./smajly/13.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*14*');" title="*14*"><img src="./smajly/14.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*15*');" title="*15*"><img src="./smajly/15.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*16*');" title="*16*"><img src="./smajly/16.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*17*');" title="*17*"><img src="./smajly/17.gif" width="15" height="15" border="0"></a> <a href="javascript:add('*18*');" title="*18*"><img src="./smajly/18.gif" width="15" height="15" border="0"></a> </td> </tr> </table> </center> <? $chyba=mysql_error(); echo "$chyba"; $nahradit_co=array("*1*","*2*","*3*","*4*","*5*","*6*","*7*","*8*","*9 *","*10*","*11*","*12*","*13*","*14*","*15*","*16*","*17*","*18*"); $nahradit_cim = array( "<img src=\"./smajly/01.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/02.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/03.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/04.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/05.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/06.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/07.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/08.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/09.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/10.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/11.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/12.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/13.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/14.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/15.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/16.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/17.gif\" width=\"15\" height=\"15\">", "<img src=\"./smajly/18.gif\" width=\"15\" height=\"15\">"); $text= str_r |
||
Doom4 Profil * |
#2 · Zasláno: 29. 1. 2006, 17:18:55
$text= str_replace($nahradit_co, $nahradit_cim,$text);
?> <? // vybereme posledních 20 zpráv z databáze $v = mysql_query("SELECT id,jmeno,email,nazev,text,cas FROM guestbook ORDER BY id DESC LIMIT 0,10"); $p = mysql_num_rows($v); // pokud nějaké takovéto zprávy existují, zobrazíme je if ($p > 0): echo "<div align=center><center><table border=0 width=75%>"; while ($z = mysql_fetch_row($v)) { echo "<tr><td><strong>"; if($z[2]) echo "<a href=mailto:$z[2]>$z[1]</a>"; //pokud byl zadán e-mail else echo "$z[1]"; // pokud ne zobrazíme jen jméno echo "</strong><br><em>$z[3]</em></td> <td><p align=right>$z[5]</p></td></tr> <tr><td colspan=2><strong>$z[4],$text</strong></td></tr> <tr><td colspan=2><hr noshade></td></tr>"; } echo "</TABLE>\n"; endif; echo "</BODY></HTML>\n"; ?> jinak kniha v php je zde http://xchatteplice.wz.cz/guestbook.php |
||
Finc Profil * |
#3 · Zasláno: 31. 1. 2006, 11:23:21
Za prve:
Data do DB by se mela ukladat nezmena, htmlspecialchars navic neni na odstraneni html tagu. Osetreni by melo byt pouze na velikost a spravnost vkladanych dat. Pri selectu z DB data osetrit od html tagu strip_tags. To same plati i pro cas, ktery ukladate. V DB by mel byt typ datetime, do ktereho se cas ulozi. Je zbytecne datum prevadet pred vlozenim do DB. Za druhe: naucte se XHTML + CSS Za treti: Pro zobrazeni smajliku byste mel pouzit nejaky regularni vyraz s omezenim poctu zobrazenych smajliku. Ja pouzivam napr. max. 4 smajliky, zbytek zustane v textove podobe. Urcite by se pole $nahradit_cim dala prepsat pomoci for ci ji uplne zrusit, pokud pouzijete kontrolu pres regularni vyraz. V javascriptu plati to same, urcite pouzit for, pokud jsou cisla smajliku takto v rade za sebou. Vyber dat z DB Vam vybira pouze 10 radku, nikoli 20 jak mate v komentari, bacha na to. Radeji bych k tomu sednul a prepsat to znovu. Kniha navstev je dost nachylna na chyby, zejmena uzivatele se muzou pokusit Vam ji spamovat ci jinak znehodnotit. |
||
Časová prodleva: 9 dní
|
|||
WalWerin Profil * |
#4 · Zasláno: 8. 2. 2006, 23:53:11
to je jak ve vlaku ten zdroják
td td td td td td td |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0