теперь после загрузки ссылка и символы записываются в бд. но понятия не имею как заменить символы на ссылки. есть ли другой способ замены без массивов?
Спустя 46 минут, 40 секунд (19.03.2012 - 14:57) Ramzil_Nixon написал(а):
Никто не может помочь?
Спустя 9 минут, 41 секунда (19.03.2012 - 15:07) Visman написал(а):
А какой другой способ может быть?
Два массива, в одном коды смайлов (которые в тексте), в другом html код картинок смайлов.
Потом заменой первого массива на второй и все.
Два массива, в одном коды смайлов (которые в тексте), в другом html код картинок смайлов.
Потом заменой первого массива на второй и все.
Спустя 6 минут (19.03.2012 - 15:13) Ramzil_Nixon написал(а):
Visman, пробовал такой способ:
Получается я просто не делаю правильный вывод?
$Qu = mysql_query("SELECT * FROM `Smiles`") or die(mysql_error());
$smiles = array( while($U = mysql_fetch_assoc($Qu)){'<img src="'.$U['url'].'" class="icon">'});
Получается я просто не делаю правильный вывод?
Спустя 5 минут, 40 секунд (19.03.2012 - 15:19) Visman написал(а):
$smiles точно содержит массив картинок? Что-то меня запись эта с тольку сбивает.
Спустя 1 минута, 38 секунд (19.03.2012 - 15:20) vinnie написал(а):
print_r($smiles) что ретурнит позырь)
Спустя 1 минута, 51 секунда (19.03.2012 - 15:22) Ramzil_Nixon написал(а):
Visman
Цитата (Visman @ 19.03.2012 - 12:19) |
$smiles точно содержит массив картинок? |
Да это массив картинок. Есть еще массив символов $html.
Цитата (vinnie @ 19.03.2012 - 12:20) |
print_r($smiles) что ретурнит позырь) |
Насчет этого я не подумал
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 4 минуты, 24 секунды (19.03.2012 - 15:27) Visman написал(а):
Если и $smiles, и $html массивы и соответствуют друг друго, то заменяем
$text = str_replace($html, $smiles, $text);
Спустя 4 минуты, 57 секунд (19.03.2012 - 15:32) Ramzil_Nixon написал(а):
Visman, Вот именно они не соответствуют. Вот это и хотел выяснить, как правильно и последовательно кинуть в массив из БД
Спустя 2 минуты, 18 секунд (19.03.2012 - 15:34) Visman написал(а):
Если в бд, то два столбца.
Текст смайлов и html картинок.
Строй одновременно в цикле два массива, тогда они будут при замене совпадать.
Текст смайлов и html картинок.
Строй одновременно в цикле два массива, тогда они будут при замене совпадать.
Спустя 1 минута, 30 секунд (19.03.2012 - 15:35) Visman написал(а):
Можно вообще одним :D
Такой кэш файлик, чтобы бд зря не гонять.
<?php
$smilies = array(
':)' => 'smile.png',
'=)' => 'smile.png',
':|' => 'neutral.png',
'=|' => 'neutral.png',
':(' => 'sad.png',
'=(' => 'sad.png',
':D' => 'big_smile.png',
'=D' => 'big_smile.png',
':o' => 'yikes.png',
':O' => 'yikes.png',
';)' => 'wink.png',
':/' => 'hmm.png',
':P' => 'tongue.png',
':p' => 'tongue.png',
':lol:' => 'lol.png',
':mad:' => 'mad.png',
':rolleyes:' => 'roll.png',
':cool:' => 'cool.png',
);
?>
Такой кэш файлик, чтобы бд зря не гонять.
Спустя 6 минут, 35 секунд (19.03.2012 - 15:42) Ramzil_Nixon написал(а):
Цитата (Visman @ 19.03.2012 - 12:35) |
Можно вообще одним ![]() |
Вот с многомерным массивом вариант.
А в таком случае как будет str_replace();?
Спустя 5 минут, 41 секунда (19.03.2012 - 15:48) Visman написал(а):
$text = str_replace(array_keys($smiles), array_values($smiles), $text);
Спустя 21 минута, 26 секунд (19.03.2012 - 16:09) Ramzil_Nixon написал(а):
Цитата (Visman @ 19.03.2012 - 12:48) |
$text = str_replace(array_keys($smiles), array_values($smiles), $text); |
Что-то не хочет работать:
$RE = '';
$qu = mysql_query("SELECT * FROM `smiles`") or die(mysql_error());
while($Q = mysql_fetch_assoc($qu))
{
$RE .= $Q['url'].' => '.$Q['like'];
}
$Am = array($RE);
echo str_replace(array_keys($Am), array_values($Am), ':-)');
Спустя 5 минут, 51 секунда (19.03.2012 - 16:15) Visman написал(а):
$Am = array();
$qu = mysql_query("SELECT * FROM `smiles`") or die(mysql_error());
while($Q = mysql_fetch_assoc($qu))
{
$Am[$Q['like']] = $Q['url'];
}
echo str_replace(array_keys($Am), array_values($Am), ':-)');
Тут
$Am[$Q['like']] = $Q['url'];
я думаю, что 'like' - это код смайла в тексте? а 'url' это картинка?
Спустя 6 минут, 44 секунды (19.03.2012 - 16:22) Ramzil_Nixon написал(а):
Цитата (Visman @ 19.03.2012 - 13:15) |
я думаю, что 'like' - это код смайла в тексте? а 'url' это картинка? |
Все правильно. Все, заработало. Держи +
_____________
Миллионы приходят, уходят, не в них счастье. Самым важным на свете всегда будут люди в этой комнате, вот здесь, сейчас...
![user posted image](http://pawn-wiki.ru/uploads/imgs/img_1328954764__0f0e3d8507df.gif)