Autor | Zpráva | ||
---|---|---|---|
Rogue Profil |
#1 · Zasláno: 27. 8. 2008, 23:01:00
Ahoj potřeboval bych zjistit jaký použít datový typ pro jakékoliv znaky. Potřeboval bych do DB ukládát html kód se všemi značkami. Zkoušel jsem typ TEXT ale do DB se to neuloží.
Poradí mi někdo |
||
mark Profil |
#2 · Zasláno: 27. 8. 2008, 23:28:27
Vyskúšaj char (n) alebo aj varchar (n), to záleží na tom, ako si určíš počet znakov.
|
||
ninja Profil |
#3 · Zasláno: 27. 8. 2008, 23:30:32
Pro textovy retezez je pouzitelny char, varch i text, zalezi na jeho delce. BLOB je urcen pro binarnni data.
k ulozeni nedoslo pravdepodobne protoze jste neosetril uvozovky v html kodu. |
||
mark Profil |
#4 · Zasláno: 27. 8. 2008, 23:30:45
U char(n) je hodnota n počet znakov reťazca, u varchar(n) je hodnota n maximálny počet znakov v reťazci.
|
||
dependos Profil * |
#5 · Zasláno: 27. 8. 2008, 23:31:07
proč neuloží? Jestli neuložilo jako text, těžko se uloží jako var/char. Neuloží vůbec, nebo uloží ale bez html značek? Můžeš poslat ten sql insert?
|
||
Rogue Profil |
#6 · Zasláno: 27. 8. 2008, 23:46:01
To bude tím jak říka ninja neošetřil jsem html značky zpětným lomítkem
|
||
Rogue Profil |
#7 · Zasláno: 27. 8. 2008, 23:48:19
No teď mě tak napadá nejde nějak ošetřiř aby se ty zpětný lomítka dávaly automaticky? za každý "
|
||
ninja Profil |
#8 · Zasláno: 27. 8. 2008, 23:49:21
priklad:
html kod ktery chci ulozit ahoj <strong>kamaradi</strong>, kouknete <a href="www.example.com">sem</a> INSERT INTO tabulka (sloupec) VALUES (ahoj <strong>kamaradi</strong>, kouknete <a href="www.example.com">sem</a>) neprojde INSERT INTO tabulka (sloupec) VALUES ("ahoj <strong>kamaradi</strong>, kouknete <a href="www.example.com">sem</a>") neprojde INSERT INTO tabulka (sloupec) VALUES ("ahoj <strong>kamaradi</strong>, kouknete <a href=\"www.example.com\">sem</a>") projde |
||
ninja Profil |
#9 · Zasláno: 27. 8. 2008, 23:51:45 · Upravil/a: ninja
Zalezi na nastaveni direktivy magic_qoutes. V PHP je na osetreni toho pripadu funkce addslashes() a strpslashes().
|
||
mpark Profil |
#10 · Zasláno: 27. 8. 2008, 23:56:29 · Upravil/a: mpark
k ukládání do db bych se taky přikláněl i k fukncím escape_string nebo real_escape_string
|
||
Rogue Profil |
#11 · Zasláno: 27. 8. 2008, 23:57:10 · Upravil/a: Rogue
Dík ninjo.
Ještě mám tedka problém ;) Zadal jsem to tam s zpětnýma lomítkama a ono se to i snima uložilo do DB .... to by nemělo ne? typ mam jako text |
||
joe Profil |
#12 · Zasláno: 28. 8. 2008, 02:10:54
Rogue
Vypni si magic_qoutes a použij funkci mysql_escape_string nebo mysql_real_escape_string |
||
Časová prodleva: 5 dní
|
|||
Rogue Profil |
#13 · Zasláno: 1. 9. 2008, 14:18:17
Vypnul jsem magic_qoutes, použil mysql_escapage_string a zkoušel jsem i addslashes(), ale bohužel pořád nic.
Do formuláře zadám html kód dejme tomu: (z hlavičky tohoto fora to je fuk) <meta http-equiv="content-type" content="text/html;charset=iso-8859-2"> <LINK href="./bb_classic_style.css" type="text/css" rel="STYLESHEET"> <link rel="icon" href="/favicon.ico" type="image/x-icon"> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> to formulář uloží do proměné $html a posílá to do ulož.php kde je připojení do db <?php $html = "$_POST[html]"; $doplnlomitka = mysql_escape_string($html); ?> a pokračuje to normálním mysql_query("insert into....... ale do DB se nic neuloží. vše funguje v pořádku pokud dám před každou uvozovku v html kódu \. Neporadí mi někdo? |
||
Rogue Profil |
#14 · Zasláno: 1. 9. 2008, 14:51:53
Dělal jsem hloupost už jsem to zprovoznil díky za snahu pomoct
|
||
Časová prodleva: 16 let
|
0