запис в базата на иероглифи

embaka

Registered
здравайте, до сега не съм имал такъв проблем с тея ???, но сега имам, когато добавя нещо на кирилица, в базата се записва с някакви иероглифи, като го погледна из сайта излиза на ????, не мога да си го обясня защо става така.

колацията ми навсякъде из базата е утф8_бин, а това ми е кода. просто след като добавих тая галерия всичко останало става така иначе всичко си работи перфектно, ето го и кода:

Код:
<? include ("lock.php"); 
$quuery = mysql_query("SET names cp1251");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta name="verify-v1" content="dm2tPRooP0aS+TCN4pLx0rx5DuSFd1OXdgtLuv6Vt+A=" />
<title>Албум</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">

<? include("blocks/header.php");   ?> 
  <tr>
    <td><table width="690" border="0" cellspacing="0" cellpadding="0">
      <tr>

<? include ("blocks/lefttd.php");  ?>      
        <td valign="top">
      
	    

<?php
require_once '../conf.php';
$album_name=$_POST['album_name']; 
$page_name = "Албум - ".$album_name;
echo "<p><font size=4>".$page_name."</font>     <a href=admin_galery.php>Редактирай друг</a></p><hr>";
require_once '../conect.php';

//-------------------------------------------------------------------
$album_id=$_POST['album_id']; 	

$album_id=substr($album_id,0,16);

if (!preg_match("|^[0-9]+$|",$album_id)) 
	{echo '<p>Старай се повече!</p>';} 
	
$aquery = "select * from albums where album_id LIKE '$album_id'";
$ares = mysql_query($aquery) or die(mysql_error());
$arow=mysql_fetch_array($ares);

echo "
<form name='formm' enctype='multipart/form-data' action='add_image_next_from_album.php' method='post'>
<p><label><font size=4>Добави изображение</font></label></p>
<p><label>Добави изображение<br><input type='file' name='userfile' size=43%><input type='hidden' name='MAX_FILE_SIZE' value='30000000000'></label></p>
<p><label>Добави информация<br><input type=text name=image_name maxlength=500 size=43%></label></p>
<p><label><input type=hidden name=album_name  value='".$album_name."'><input type=hidden name=album_id value=".$album_id.">
<p><label><input type=submit class='button' value=Добави></label></p>
</form><br /><hr>

<form name='form1' enctype='multipart/form-data' action=rename_album.php method=post>
<p><label><font size=4>Преименувай Албум</font></label></p>
<p><label>Име на Албума<br><input type=text name=album_name maxlength=500 size=43% value='".$arow['album_name']."'></label></p>
<input type=hidden name=album_id  value='".$album_id."'>
<p><label><input type=submit class='button' value=Промени></label></p>
</form><br />
";
?>


</td>
      </tr>
    </table></td>
  </tr>
<?php  include ("blocks/footer.php");        ?>  
</table>
</body>
</html>
 
Я промени там кадето ти е cp1251 на utf8 и windows-1251 го промени на utf8 и виш как ще е ?
 
Влез в phpMyAdmin и въпросната таблица , след това избери менюто Операции , и след като ти зареди прозореца , ще видиш в долния край едно меню Колация , избери от падащото менщ cp1251_bulgarian_ci.
След това може да сложиш (ако е друг) чарсет windows-1251 и при конектването към базата данни
mysql_query("SET CHARACTER SET cp1251")or die(mysql_error());
 
без промяна, аз съм задал в заявката за сетване на cp1251, не знам дали си гледал това което дадах, ама не е от това :? смених колацията и от там не е, сега вместо да ги записва на иероглифи всичко става на ?????


струва ми се, че е от тая функция, която прави проверка какви символи ще се записват

if (!preg_match("|^[0-9]+$|",$album_id))
 
това е моя система, просто добавям една галерия към нея и си я правя по сайта както си ми е, но има проблем със записа в нея
 

Горе