Проблема с кавычками

magnbiz

Новичок
Проблема с кавычками

В моей базе лежит имя фирмы ООО "Стройторг" (см. сайт http://cool.magn.biz).
И почему-то кавычки не воспринимаются...
выводиться в подсказке при наведении курсора мыши просто ООО

Код следующий:

PHP:
...
$two = mysql_result($res, $i, 0);
$site = mysql_result($res, $i, 1);
$def = mysql_result($res, $i, 2);
$a = "<a href=\"http://$site\" title=\"$def\" style=\"background-color:EEDD00\">$two</a>";
...
 

magnbiz

Новичок
аааа вот нашёл htmlentities:

$two = htmlentities(mysql_result($res, $i, 0), ENT_QUOTES, cp1251);
$site = htmlentities(mysql_result($res, $i, 1), ENT_QUOTES, cp1251);
$def = htmlentities(mysql_result($res, $i, 2), ENT_QUOTES, cp1251);
$a = "<a href=\"http://".$site."\" title=\"".$def."\" style=\"background-color:EEDD00\">".$two."</a>";

Вот так пишешь на плюсах и думаешь, что на ПХП тоже самое и будет даже проще и потом паришься )))

-~{}~ 22.12.08 22:37:

Mr_Max )))))))))
 

DiMA

php.spb.ru
Команда форума
в данном случае - htmlspecialchars()

function ihtml($str) {
return "\"".@htmlspecialchars($str)."\"";
}
 

zerkms

TDD infected
Команда форума
DiMA
какой тайный смысл заключён в использовании @ в этом месте?
 

zerkms

TDD infected
Команда форума
HraKK
угу, не говоря уже о том, что функция, являющаяся тупо обёрткой для встроенной функции - жутко плохая практика... ну да не нам судить, ололо :)
 

AmdY

Пью пиво
Команда форума
в случае php я бы поспорил, особенно для некоторых функций, типо строковых у меня есть наработка, врапящая строки в объект с с соответствующими методами, всё руки чешутся включить её в инструментарий.
 

zerkms

TDD infected
Команда форума
AmdY
инкапсуляция строк в объекты с реализацией доп. плюшек не эквивалентна созданию синонимов функции, это вполне нормально и красиво. (кавычки дополнительным функционалом не считаю)
 

DiMA

php.spb.ru
Команда форума
zerkms
Большой, подумай на досуге. Используй его Фиксер в своем Ребусе номер 2 - я бы не нашел исходники его скрипта.

-~{}~ 23.12.08 02:21:

все больно умные, тока ни бэ, ни мэ по делу там не сочинили .-)

-~{}~ 23.12.08 02:23:

да, а портал я тебе не напишу... За это не платят :)
 

zerkms

TDD infected
Команда форума
DiMA
ах да, в функцию могут передать не строку... супермногосмысла... а проверить данные на тип и кинуть эксепшн - это не по-джедайски? :)
 

DiMA

php.spb.ru
Команда форума
любишь взрывать себе мозг ненужными подробностями? Ради Бога, тока причем тут мы? .-) А теперь давай свой флуд не по теме в корзинку переноси.
 

zerkms

TDD infected
Команда форума
DiMA
почему подробностями? ты посоветовал человеку пример кода. возражение, что код выглядит странно и просьбу прокомментировать, почему так, а не иначе:

PHP:
if (!is_string($str)) {
    throw new wrongArgumentTypeException($str);
}
принял в штыки. это не ненужные подробности, это форум, где людей учат делать правильно. а ещё, как в большинстве цивилизованных IT-сообществ, объективно аргументируют свой подход, благо наука более-менее точная.
 

AmdY

Пью пиво
Команда форума
имхо, вы оба неправы, на продакшине должен быть запрёщён вывод ошибок и нужда в @ отпадает, а в примерах на форуме излишне писать полностью код со всеми
try, throw, catch
!is_string($str) тоже недостаточно, почему бы непропустить число или объект с метододом __toString()
совсем уж правильный ответ отнимет кучу времени и загрузит вопрошающего
 

zerkms

TDD infected
Команда форума
AmdY
просто @ - это недомера, непонятно к чему написанная. собственно комментировать автор отказывается. а по поводу недостаточности проверки - это по крайней мере проверка, а список типов аргумента - зависит от задачи, о которой мы не имеем представления.
а по поводу правильности ответа - нужно подсказать идею, а не писать готовый код.

моя идея - писать условие с проверкой типа и эксепшном. есть альтернативные - предлагайте.
 

AmdY

Пью пиво
Команда форума
я предпочитаю вовсе не лепить дополнительных проверок-условий. на этапе девелопинга вывод ошибок включён и ошибки легко отловить, поэтому нивкоем слуаче нельзя использовать @. а на продакшене отключен вывод ошибок и пускай подбирают кривые параметры на здоровье. ленивый я :(.
 
Сверху