Проблем с str_replace

hisar

Registered
Здравейте имам голям проблем нещо неработи ето кода:

Код:
<div id='emoticons' style='padding-top: 5px; margin-left: 0px;'>
				<a href='javascript: void(0)' title=':R'><img src='img/smiles/arrow.gif' /></a>
				<a href='javascript: void(0)' title=':C'><img src='img/smiles/coll.gif' /></a>
				<a href='javascript: void(0)' title=':?'><img src='img/smiles/confused.gif' /></a>
				<a href='javascript: void(0)' title=':lol:'><img src='img/smiles/ddz.gif' /></a>	
				<a href='javascript: void(0)' title=':!'><img src='img/smiles/exclamation.gif' /></a>		
				<a href='javascript: void(0)' title=':idea:'><img src='img/smiles/idea.gif' /></a>		
				<a href='javascript: void(0)' title=':M'><img src='img/smiles/mad.gif' /></a>		
				<a href='javascript: void(0)' title=':Q'><img src='img/smiles/question.gif' /></a>		
				<a href='javascript: void(0)' title=':roll:'><img src='img/smiles/rolling_eyes.gif' /></a>		
				<a href='javascript: void(0)' title=':cry:'><img src='img/smiles/sad.gif' /></a>		
				<a href='javascript: void(0)' title=':SH'><img src='img/smiles/shocked.gif' /></a>
				<a href='javascript: void(0)' title=':D'><img src='img/smiles/smile.gif' /></a>	
				<a href='javascript: void(0)' title=':EV'><img src='img/smiles/twisted_evil.gif' /></a>	
				<a href='javascript: void(0)' title=':verryH:'><img src='img/smiles/verry_happy.gif' /></a>
				<a href='javascript: void(0)' title=':verryS:'><img src='img/smiles/verry_sad.gif' /></a>
				<a href='javascript: void(0)' title=':W'><img src='img/smiles/wink.gif' /></a></div>
				<form action='' method='post'><textarea id='comentfield' name='comm' rows='4' cols='70'></textarea><br />
				<input type='submit' name='prati' value='Прати' />
			</form>";
		
		if(isset($_POST['prati'])) {
 $comm = addslashes(htmlspecialchars($_POST['comm']));
 $comm = str_replace(":R", '<img src="img/smiles/arrow.gif" />', $comm);
      $comm = str_replace(":C", '<img src="img/smiles/coll.gif" />', $comm);
      $comm = str_replace(":?", '<img src="img/smiles/confused.gif" />', $comm);
      $comm = str_replace(":lol:", '<img src="img/smiles/ddz.gif" />', $comm);
      $comm = str_replace(":!", '<img src="img/smiles/exclamation.gif" />', $comm);
      $comm = str_replace(":idea:", '<img src="img/smiles/idea.gif" />', $comm);
      $comm = str_replace(":M", '<img src="img/smiles/mad.gif" />', $comm);
      $comm = str_replace(":Q", '<img src="img/smiles/question.gif" />', $comm);
      $comm = str_replace(":roll:", '<img src="img/smiles/rolling_eyes.gif" />', $comm);
      $comm = str_replace(":cry:", '<img src="img/smiles/sad.gif" />', $comm);
      $comm = str_replace(":SH", '<img src="img/smiles/shocked.gif" />', $comm);
      $comm = str_replace(":D", '<img src="img/smiles/smile.gif" />', $comm);
      $comm = str_replace(":EV", '<img src="img/smiles/twisted_evil.gif" />', $comm);
      $comm = str_replace(":verryH", '<img src="img/smiles/verry_happy.gif" />', $comm);
      $comm = str_replace(":verryS", '<img src="img/smiles/verry_sad.gif" />', $comm);
      $comm = str_replace(":W", '<img src="img/smiles/wink.gif" />', $comm); 
				  $ss = $_SESSION['username'];
				  $date = date('Y-m-d h:i:s');
				  mysql_query('INSERT INTO `online_chat` (`author`,`time`,`desc`) VALUES ("'.$ss.'","'.$date.'","'.$comm.'")');	
		}
 
PHP кода без отварящ таг ли го започваш каде ти е връзката с базата данни :D земи си оправи малко кода
 
А, ако ги направиш по този начин?
Код:
$comm = str_replace("/\:C/i", '<img src="img/smiles/coll.gif" alt="" />', $comm);
А и между другото, за да ти е валиден HTML кода, слагай атрибута alt на картинките, дори и да е празен! :wink:
 
@kikity_94 виж ся не съм длъжин да да ти давам целият ми проект естестевно че имам връзка към базата данни в отделен файл и тнт.

@misho стана сега го вкарва в базата данни обаче само като име :C ане като картинка <img src="img/smiles/coll.gif" alt="" /> ?
 
добре просто си исказх мнението и междудругото така трябва да го вкарва в базата данни като текст не като картинка :)
 
Заповядай! Със здраве да си го ползваш! :D

Код:
<div id='emoticons' style='padding-top: 5px; margin-left: 0px;'>
				<a href='javascript: void(0)' title=':R'><img src='img/smiles/arrow.gif' /></a>
				<a href='javascript: void(0)' title=':C'><img src='img/smiles/coll.gif' /></a>
				<a href='javascript: void(0)' title=':?'><img src='img/smiles/confused.gif' /></a>
				<a href='javascript: void(0)' title=':lol:'><img src='img/smiles/ddz.gif' /></a>	
				<a href='javascript: void(0)' title=':!'><img src='img/smiles/exclamation.gif' /></a>		
				<a href='javascript: void(0)' title=':idea:'><img src='img/smiles/idea.gif' /></a>		
				<a href='javascript: void(0)' title=':M'><img src='img/smiles/mad.gif' /></a>		
				<a href='javascript: void(0)' title=':Q'><img src='img/smiles/question.gif' /></a>		
				<a href='javascript: void(0)' title=':roll:'><img src='img/smiles/rolling_eyes.gif' /></a>		
				<a href='javascript: void(0)' title=':cry:'><img src='img/smiles/sad.gif' /></a>		
				<a href='javascript: void(0)' title=':SH'><img src='img/smiles/shocked.gif' /></a>
				<a href='javascript: void(0)' title=':D'><img src='img/smiles/smile.gif' /></a>	
				<a href='javascript: void(0)' title=':EV'><img src='img/smiles/twisted_evil.gif' /></a>	
				<a href='javascript: void(0)' title=':verryH:'><img src='img/smiles/verry_happy.gif' /></a>
				<a href='javascript: void(0)' title=':verryS:'><img src='img/smiles/verry_sad.gif' /></a>
				<a href='javascript: void(0)' title=':W'><img src='img/smiles/wink.gif' /></a></div>
				<form action='' method='post'><textarea id='comentfield' name='comm' rows='4' cols='70'></textarea><br />
				<input type='submit' name='prati' value='Прати' />
			</form>";
		
		if(isset($_POST['prati'])) {
 $comm = addslashes(htmlspecialchars($_POST['comm'])); 
$patterns = array(
	"/\:R/i",
	"/\:C/i",
	"/\:\?/i",
	"/\:lol\:/i",
	"/\:\!/i", 
	"/\:idea\:/i", 
	"/\:M/i",
	"/\:Q/i", 
	"/\:roll\:/i",
	"/\:cry\:/i",
	"/\:SH/i", 
	"/\:D/i", 
	"/\:EV/i", 
	"/\:verryH/i", 
	"/\:verryS/i", 
	"/\:\W/i");
$replacements = array(
	'<img src="img/smiles/arrow.gif" alt="" />', 
	'<img src="img/smiles/coll.gif" alt="" />',
	'<img src="img/smiles/confused.gif" alt="" />',
	'<img src="img/smiles/ddz.gif" alt="" />',
	'<img src="img/smiles/exclamation.gif" alt="" />', 
	'<img src="img/smiles/idea.gif" alt="" />', 
	'<img src="img/smiles/mad.gif" alt="" />',
	'<img src="img/smiles/question.gif" alt="" />',
	'<img src="img/smiles/rolling_eyes.gif" alt="" />',
	'<img src="img/smiles/sad.gif" alt="" />', 
	'<img src="img/smiles/shocked.gif" alt="" />',
	'<img src="img/smiles/smile.gif" alt="" />', 
	'<img src="img/smiles/twisted_evil.gif" alt="" />', 
	'<img src="img/smiles/verry_happy.gif" alt="" />', 
	'<img src="img/smiles/verry_sad.gif" alt="" />', 
	'<img src="img/smiles/wink.gif" alt="" />'
);
$comm = preg_replace($patterns, $replacements, $comm);
				  $ss = $_SESSION['username'];
				  $date = date('Y-m-d h:i:s');
				  mysql_query('INSERT INTO `online_chat` (`author`,`time`,`desc`) VALUES ("'.$ss.'","'.$date.'","'.$comm.'")');	
		}
 
Сигурен ли си, че $_POST['comm'] връща нещо? Провери го! Явно някъде се губи стойността му. Иначе заместването работи, можеш да го видиш тук:
http://79.132.0.33/ppp.php
 
Еми, да, де! нали за това ти дадох примера. Първият ред е оригиналът, преди да е преминал през preg_replace, а вторият ред е същият текст, вече минал през preg_replace, както виждаш с картинка. А какво стана с липсващия текст? Разбра ли къде се губи?
 
Оправих го знаеш ли в какво беше проблема в самата заяка заради '' и "" както и да е оправих се мерси все пак
 

Back
Горе