Jump to content
php.lv forumi

Recommended Posts

Posted

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?

Posted (edited)

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
Posted

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ē :)

Posted

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???

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...