|
|
|
| нужно и строки полученной от пользователя удалить все спецсимволы как это сделать | |
|
|
|
|
|
|
|
для: dakota
(10.10.2008 в 21:05)
| | А что такое "спецсимволы"? | |
|
|
|
|
|
|
|
для: BinLaden
(10.10.2008 в 21:06)
| | двойная кавычка, одиночная кавычка | |
|
|
|
|
|
|
|
для: dakota
(10.10.2008 в 21:19)
| | >двойная кавычка, одиночная кавычка
<?php
$text = "text \" text2 ' text3";
$text = preg_replace("#\"|'#", "", $text);
print $text;
?>
|
P.S. А собственно зачем убирать? Вы в базу эти строки записываете? | |
|
|
|
|
|
|
|
для: AcidTrash
(10.10.2008 в 22:46)
| | да в базу решила вопрос используюя фунцию htmlspecialchars
но почемуто при записи из csv файла в базу данных использую
$f=fopen($uploadfile, "r");
$data=array();
while($row = fgets($f))
{
$val=strtolower($row);
$val=ucfirst($val);
$val=trim($val);
$val=htmlspecialchars($val, ENT_QUOTES, 'cp1251');
$data[]=$val;
}
если в тексте были одни кавычки то их становится 3("->""") помогите разобраться | |
|
|
|
|
|
|
|
для: dakota
(10.10.2008 в 23:47)
| | Если вы записываете в базу, то воспользуйтесь обработкой данных функцией mysql_escape_string().
if(!get_magic_quotes_gpc()){
$string = mysql_escape_string($string)
}
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(11.10.2008 в 00:01)
| | >Если вы записываете в базу, то воспользуйтесь обработкой данных функцией mysql_escape_string().
>
>
if(!get_magic_quotes_gpc()){
>$string = mysql_escape_string($string)
>}
|
О Боже, что Вы советуете? Данные приходят от пользователя? Я так понял, что из файла. | |
|
|
|
|
|
|
|
для: dakota
(10.10.2008 в 23:47)
| | * Просит прощения у Аллаха за мысли об убийстве *
Вам не нужно удалять кавычки. Вам нужно использовать mysql_escape_string():
<?php
$f=fopen($uploadfile, "r");
$data=array();
while($row = fgets($f))
{
$val=strtolower($row);
$val=ucfirst($val);
$val=trim($val);
$val= mysql_escape_string($val);
$data[]=$val;
}
?>
|
P.S.
* Думает спросить или нет *
* Вспоминает недавний разговор с cheops'ом *
* Решает промолчать >:) * | |
|
|
|
|
|
|
|
для: BinLaden
(11.10.2008 в 00:04)
| | а при этом слуши будут видны? нужно чтобы они не отображались | |
|
|
|
|
|
|
|
для: dakota
(11.10.2008 в 00:10)
| | Нет | |
|
|
|
|
|
|
|
для: dakota
(11.10.2008 в 00:10)
| | данные файла
"анальгин'
"ABACAVIR"
вот что выводит
Array
(
[0] => \"\"\"анальгин\'\"
[1] => \"\"\"abacavir\"\"\"
)
while($row = fgets($f))
{
$val=strtolower($row);
$val=ucfirst($val);
$val=trim($val);
$val= mysql_escape_string($val);
$data[]=$val;
}
echo "<pre>";
print_r($data);
echo "</pre>";
при использовании $val=htmlspecialchars($val, ENT_QUOTES, 'cp1251');
Array
(
[0] => """анальгин'"
[1] => """abacavir"""
) | |
|
|
|
|
|
|
|
для: dakota
(11.10.2008 в 00:15)
| | > вот что выводит
А Вы не смотрите то, что перед записью -- смотрите то, что записалось. Потому что синтаксический анализатор MySQL, конечно, потом уберет лишние бекслеши.
> данные файла
> "анальгин'
> "ABACAVIR"
Может
""апельсин""
""ABACAVIR""
? | |
|
|
|
|
|
|
|
для: BinLaden
(11.10.2008 в 00:22)
| | данные которые поступают из файла
"""анальгин'"
"""ABACAVIR""" | |
|
|
|
|
|
|
|
для: dakota
(11.10.2008 в 00:34)
| | Ну, всё правильно. После записывания в таблицу лишние бекслеши исчезнут и будут те данные, что находятся в файле. | |
|
|
|
|
|
|
|
для: BinLaden
(11.10.2008 в 00:49)
| | но в файле csv данные выглядят так :
"анальгин'
"ABACAVIR"
откуда потом при чтении берутся дополнительныек кавычки непонятно | |
|
|
|
|
|
|
|
для: dakota
(11.10.2008 в 00:57)
| | В таком случае, наверное, Вы показали не весь код. | |
|
|
|
|
|
|
|
для: BinLaden
(11.10.2008 в 00:04)
| | >О Боже
Не катит, для мусульман.
P.S. По привычке с данными от юзеров. | |
|
|
|
|
|
|
|
для: AcidTrash
(11.10.2008 в 00:15)
| | откуда берутся дополнительные кавычки? | |
|
|
|
|
|
|
|
для: AcidTrash
(11.10.2008 в 00:15)
| | > Не катит, для масульман.
А я не в курсе, а как у мусульман? У них Бога нет что ли?
> По привычке с данными от юзеров.
Ну раз у Вас такие привычки, то не советуйте...Что еще можно сказать? | |
|
|
|