Temandaki o bölümü bir de şöyle dene: substr'ten önce: str_replace("'",'`',$kisaltilacak); veya o html koduna dönüştürülmüş tırnak işaretinin yerine ` str_replace('&#...neyse','`',$kisaltilacak); ... substr'ten sonra htmlspecialchars(str_replace('`',"'",$kisaltilan)) ; böylece çevresinden dolaşmış olursun.