Jump to content
php.lv forumi

utf 8 abos virzienos


fanatos

Recommended Posts

Broblēma ir tāda, ka dati uz mySQL aizsūtās kā UTF-8 (un rādā pareizi iekš phpMyAdmin), bet vēlāk nolasot un izvadot html lapā sākās ķeburi.. fragments no DB konekijas klases:

 

class MySQLiExtened extends mysqli {

  function __construct($host, $user, $pass, $db) {
   parent::__construct($host, $user, $pass, $db);

   if (mysqli_connect_error()) {
		die('Connection Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
	}

   $this->setUtf8();
}

public function setUtf8()
{	
	$sql = "SET NAMES 'utf8' ";
	$this->query($sql);
	//$this->confirm_query($sql);			
}

 

varbūt kāds zinošāks var pateikt ko es daru nepareizi, ko vajadzētu paskatīties/pamainīt?

Link to comment
Share on other sites

SET NAMES UTF8

skjiet ka utf8 Bez pedinjam ...

Es pats izmantoju primitiivu funkciju lai pieslegtos pie DB ...

function dbconekt ($hosts, $users, $paswords, $dbname, $error_mesage)
{
 $db=@mysql_connect($hosts, $users, $paswords);
  if (!$db) // parbaude vai veiksmiigi piekonektejas Mysql serverim
{
  echo $error_mesage[0]; // Kljuudas izvadiishana ja nav MYSQL
 exit;
  }
  if (!@mysql_select_db("$dbname")) // Db izveele
  {
 echo $dbname.$error_mesage[1]; // Kljuudas izvadiishana ja nav DB
exit;
  }
  @mysql_query("SET NAMES UTF8"); // kodeejuma iestaadiishana ja Mysql =<4.1
return $db;
}

un attieciigi vienkarshi padodu 4 parametrus, hostu, useri, paroli, db_vardu, + masivu kas satur kljudas pazinjojumu ( atseviskji lai izvadiitos taada valoda kaada ir pati lapa (un arii formatejumaa ja nepieciesams) )

------

sito lietoju jau ilgi, un NEKAD nav bijusas problemas ...

 

edit: vispar izvadiit uz ekraana SISTEMAS kljudas nav iisti pareizi, ( tavaa gadijumaa izvadiit DB kljudas mesagi), jo :

1. nesmuki izskataas un norada uz to ka neprofesionali vedots kods

2.dod apmekletajiem lieku iznformaciju par servera ieksejo uzbuuvi ...

Tapec jatceras ka Potencialaas kljudas japstraadaa VIENMER ...

Edited by Grey_Wolf
Link to comment
Share on other sites

Nē, pēdiņas šeit nav būtiskas (pat pārbaudīju). No sākuma abos virzienos gāja ķeburi, bet kad pieliku setUtf8() metodi vismaz datubāzē sākā rādīt, kā es to sagaidu -> 'folkehøyskole' , bet vēlāk atlasot joprojām kaut kas nav -> 'folkehøyskole'

 

varbūt tas ir saistīts ar pašu html lapu? lai gan arī tur man ir :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

 

un arī php.ini failā ieliku default_charset = "UTF-8" bet rezultāta nekāda.

 

bet par to, ka potenciālās kļūdas ir jāapstrādā gala lietotājam 'draudzīgā veidā' es piekrītu. Bet die() man patīk lietot kamēr kodēju, ātrāk var atrast neuzmanības kļūdas SQL sintaksē :)

Link to comment
Share on other sites

kechums -> Kaads sakars PHP skriptam ar tekstualo faila informaciju.. Tika tachu paskaidrots ka dati KAS NAK NO DB Netspoguljojas Vajadzigajaa formaata...

Bet citadaakaa zinjaa jautajums ir vietaa..

fanatos->. vai dati ko ieraksti vienkaarshi ko tekstu atspoguljojas korekti ?? tb Plain teksts???

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...