#1.
Alaya
Off
(7)
Участник
2010.09.16 06:06
Как сделать, что бы при копировании текста в базу из текстовых файлов этим кодом, символы (например перенос или _ или * и так далее), не записывались в базу ?
Код:
| $q = mysql_query('SELECT `path` FROM `files` WHERE LOWER(SUBSTR(`path`, -3)) = "txt"', $mysql); |
| |
| |
| $ok = $fuck = 0; |
| while($r = mysql_fetch_assoc($q)) { |
| $f = fopen($r['path'], 'r'); |
| $name = htmlspecialchars(iconv_substr(trim(fgets($f, 1024). fgets($f, 1024)), 0, 100), ENT_NOQUOTES); |
| fclose($f); |
| |
| if (mysql_query( |
| 'UPDATE |
| `files` |
| SET |
| `name` = "'.mysql_real_escape_string($name, $mysql).'", |
| `rus_name` = "'.mysql_real_escape_string($name, $mysql).'" |
| WHERE |
| `path` = "'.mysql_real_escape_string($r['path'], $mysql).'" |
| LIMIT 1 ;' |
| , $mysql)) { |
| $ok++; |
| } else { |
| $fuck++; |
| } |
| } |
| |
| mysql_close($mysql); |
То есть это часть текста из текстового файла берется для его названия, заносятся в базу. Я хотела бы, что бы знаки * < / _ перенос сроки и прочие, присутствующие иногда, как бы пропускались, не записывались в базу, не отображались в названии, а чистый текст.
любой код можно заставить работать методом тыка. Если долго тыкать
#2.
Nu3oN
Off
(11)
Moderator
2010.09.16 07:07
если я тебя так понял то:
$var = strtr($name, array("*" => null, "\n" => null));
И так далее
Я буду лучше голоден, но между креслом и рулем и на дороге.
#3.
Alaya
Off
(7)
Участник
2010.09.16 09:09
Спасиб, но не работает

куда эту запись вставить?
Код:
| $ok = $fuck = 0; |
| $var = strtr($name, array("*" => null,"_" => null, "\n" => null)); |
| |
| while($r = mysql_fetch_assoc($q)) { |
| $f = fopen($r['path'], 'r'); |
| $name = htmlspecialchars |
так?
Nu3oN написал:
если я тебя так понял то:
$var = strtr($name, array("*" => null, "\n" => null));
И так далее
любой код можно заставить работать методом тыка. Если долго тыкать