Deutsch

HTML ins MySQL

138  
ID28071 завсегдатай03.04.05 19:51
ID28071
NEW 03.04.05 19:51 
Такой вот вопрос:
Нужно через формуляр HTML-формат в мускул забросить и потом соответственно выдать назад.
Например имеем:
formular.html
<form method="POST" action="script.php">
<textarea rows="4" name="text" cols="20"></textarea>
<input type="submit" value="go" name="go">
</form>
script.php
<?php
include'connect.inc.php';
mysql_query(INSERT INTO table ('text') VALUES ($_POST['text']),0);
print mysql_error(,0);
mysql_close($connect,0);
?>
Так вот, если я в арею что-то типа
<a href="http://web.de">WEB</a>
задам, то до мускула только (в лучшем случае) "<a href=" доходит.
Знаю точно, что над переменной $_POST['text'] еще пару операций произвести нужно, а вот каких не знаю.
Может кто подскажет?
Заранее благодарю!
#1 
  validol свой человек03.04.05 21:09
NEW 03.04.05 21:09 
в ответ ID28071 03.04.05 19:51
Tak poprobuj
mysql_query("INSERT INTO table (text) VALUES ('".$_POST['text']."'",0);
И может у тебя поле в базе как varchar - короткий, места не хватает
#2 
ID28071 завсегдатай03.04.05 21:50
ID28071
NEW 03.04.05 21:50 
в ответ validol 03.04.05 21:09
В ответ на:

И может у тебя поле в базе как varchar - короткий, места не хватает


Да хватает там все.
То же самое происходит и с TEXTAREA.
Я вообще-то данные не сразу в мускул завожу, а сначала через промежуточный фаил показываю для проверки (как здесь на форуме, когда новое сообщение пишешь), а потом уже через HIDDEN на скрипт с мускулом.
Наверное здесь и кроется ошибка:
получается что VALUE имеет HTML-Tags внутри себя...
Как бы этого избежать?
http://www.foren.germany.ru/partner/f/2391617.html?Cat=&page=0&view=collapsed&sb...

#3 
GANDJUBAS местный житель03.04.05 22:03
GANDJUBAS
NEW 03.04.05 22:03 
в ответ ID28071 03.04.05 21:50, Последний раз изменено 03.04.05 22:05 (GANDJUBAS)
> получается что VALUE имеет HTML-Tags внутри себя...
Ну понятно, что так не будет работать....
Получается "конфликт ковычек"...
Вставте замену ковычек перед вписыванием в hidden
$_POST['text']=str_replace('\"',"&quot;",$_POST['text'],0);
#4 
  validol свой человек03.04.05 22:04
NEW 03.04.05 22:04 
в ответ ID28071 03.04.05 21:50
глянь здесь
http://www.php.net/manual/de/function.htmlspecialchars.php
******
#5 
ID28071 завсегдатай04.04.05 00:17
ID28071
NEW 04.04.05 00:17 
в ответ validol 03.04.05 22:04
to: GANDJUBAS & validol
Спасибо за оперативный ответ.
Попробую завтра разобраться,
потом сообщу результат.
#6 
Залетный посетитель06.04.05 07:57
Залетный
06.04.05 07:57 
в ответ ID28071 03.04.05 19:51
просто и легко
когда записываешь - addslashes(,0);
когда выводишь - stripslashes().
http://www.studio102.ru - полет нормальный.
#7 
Murr свой человек06.04.05 12:10
Murr
NEW 06.04.05 12:10 
в ответ Залетный 06.04.05 07:57
Вот за что я не люблю РХР - так за такие сливки...
Нормально длжен быть SQL-запрос с параметром и при пнрисвоении значения параметру и извлечении поля эти проблемы должны решаться самостоятельно...
<--- nobody harmed in this action -->
#8