Jump to content

Türkçe Karakter Sorunu


muratboy31
 Share

Recommended Posts

Arkadaşlar merhaba,

 

Veri tabanında doğru görünmesine rağmen programda türkçe karakterler görünmüyor, neden olabilir ?

 

Veri tabanı;

2ue1kdt.jpg

 

Program;

4qlahj.jpg

 

Kod ;

MySQLConnection, err = MySQL:connect("veritabanı", "user", "pass", "192.168.1.2");

if not MySQLConnectionn and err then
Dialog.Message("Hata", "Veritabanı ile bağlantı kurulamadı!", MB_OK, MB_ICONSTOP);
Application.Exit(0);

end

MySQLCursor, err = MySQLConnection:execute("SELECT * FROM kisiler ORDER BY adi ASC");

satir = MySQLCursor:fetch({},"a");

while satir do
ListBoxEx.AddItem("ListBox1", "<p><font color=#000000 face=Arial size=4><b>"..satir.adi.."</b></font><br><font color=#866898 face=Arial size=3>"..satir.gorevi.."</font> </p>", satir.adi, "", "", 1, LBXITEM_HTML, 0, nil, nil, nil);

satir = MySQLCursor:fetch(satir,"a");
end

ListBoxEx.SetCheckBoxesVisible("ListBox1", false);
Link to comment
Share on other sites

  • Replies 50
  • Created
  • Last Reply

Top Posters In This Topic

Navicat te Türkçe karakter kullanırsanız AMS'de gözükmez veya ? olarak gözükür.

 

Eğer verileri AMS'den girerseniz bu sefer navicatte ? olarak gözükür ama programda Türkçe karakterler düzgün bir şekilde gözükür.

 

Özetle: Verileri AMS den girerseniz sorun yaşamazsınız karakter konusunda

Link to comment
Share on other sites

galetis'le beraber bir proje yapmıştık, verileri ams üzerinden giriyorduk müşteriler veriyi web üzerinden görüyordu, bizde girdiğimiz veriyi ams üzerinden görüntüleyebiliyorduk aynı zamanda. o zaman da bu sorun vardı ve galetis halletmişti. eğer zamanı varsa yardımcı olacaktır.

Link to comment
Share on other sites

galetis'le beraber bir proje yapmıştık, verileri ams üzerinden giriyorduk müşteriler veriyi web üzerinden görüyordu, bizde girdiğimiz veriyi ams üzerinden görüntüleyebiliyorduk aynı zamanda. o zaman da bu sorun vardı ve galetis halletmişti. eğer zamanı varsa yardımcı olacaktır.

konu ile ilgili olarak galetis'e pm atsak bir sakıncası olur mu acaba ?

Link to comment
Share on other sites

Bu bende neden olmuyor anlamadım valla.

 

 

pairs sen ams de kayıt edip farklı bir program ile mi görüntülüyorsun, yoksa ams ile kayıt edip tekrar ams ile mi görüntülüyorsun...

ben ams ile kayıt ettim ama android ile görüntülüyorum ve hatta web görüntülemede bile türkçe karakterlerde sıkıntı oluyor...

Link to comment
Share on other sites

yok o yaptığım android programı php syfası değil ama php de de aynısını yapıyor... şöyle test edebilirsin...

 

Php dosyası :

<?
	$objConnect = mysql_connect("localhost","user","123456");
	$objDB = mysql_select_db("rehber");
	
	// $_POST["txtKeyword"] = "a"; 

	$strKeyword = $_POST["txtKeyword"];
	$strSQL = "SELECT * FROM kisiler WHERE adi LIKE '%".$strKeyword."%' ORDER BY adi ASC ";

	$objQuery = mysql_query($strSQL);
	$intNumField = mysql_num_fields($objQuery);
	$resultArray = array();
	while($obResult = mysql_fetch_array($objQuery))
	{
		$arrCol = array();
		for($i=0;$i<$intNumField;$i++)
		{
			$arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
		}
		array_push($resultArray,$arrCol);
	}
	
	mysql_close($objConnect);
	
	echo json_encode($resultArray);
?>

veri tabanı : rehber

tablo adı : kisiler

alanlar : adi, sirketi, gorevi, cep1, cep2, tel, dahili, mail

Link to comment
Share on other sites

  • Editor

yok o yaptığım android programı php syfası değil ama php de de aynısını yapıyor... şöyle test edebilirsin...

 

Php dosyası :

<?
	$objConnect = mysql_connect("localhost","user","123456");
	$objDB = mysql_select_db("rehber");
	
	// $_POST["txtKeyword"] = "a"; 

	$strKeyword = $_POST["txtKeyword"];
	$strSQL = "SELECT * FROM kisiler WHERE adi LIKE '%".$strKeyword."%' ORDER BY adi ASC ";

	$objQuery = mysql_query($strSQL);
	$intNumField = mysql_num_fields($objQuery);
	$resultArray = array();
	while($obResult = mysql_fetch_array($objQuery))
	{
		$arrCol = array();
		for($i=0;$i<$intNumField;$i++)
		{
			$arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
		}
		array_push($resultArray,$arrCol);
	}
	
	mysql_close($objConnect);
	
	echo json_encode($resultArray);
?>

veri tabanı : rehber

tablo adı : kisiler

alanlar : adi, sirketi, gorevi, cep1, cep2, tel, dahili, mail

 

 

PHP den anlamıyorum bu  şekilde kullandım ekrana hiç birşey yazdırmadı.

    <?
    $objConnect = mysql_connect("localhost","root","");
    $objDB = mysql_select_db("dosya");
    // $_POST["txtKeyword"] = "a";
     
    $strKeyword = $_POST["k"];
    $strSQL = "SELECT * FROM gelenek WHERE deneme";
     
    $objQuery = mysql_query($strSQL);
    $intNumField = mysql_num_fields($objQuery);
    $resultArray = array();
    while($obResult = mysql_fetch_array($objQuery))
    {
    $arrCol = array();
    for($i=0;$i<$intNumField;$i++)
    {
    $arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
    }
    array_push($resultArray,$arrCol);
    }
    mysql_close($objConnect);
    echo json_encode($resultArray);
    ?>
Link to comment
Share on other sites

    <?
    $objConnect = mysql_connect("localhost","root","");
    $objDB = mysql_select_db("dosya");
    // $_POST["txtKeyword"] = "a";
     
    $strKeyword = $_POST["txtKeyword"];
    $strSQL = "SELECT * FROM gelenek";
     
    $objQuery = mysql_query($strSQL);
    $intNumField = mysql_num_fields($objQuery);
    $resultArray = array();
    while($obResult = mysql_fetch_array($objQuery))
    {
    $arrCol = array();
    for($i=0;$i<$intNumField;$i++)
    {
    $arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
    }
    array_push($resultArray,$arrCol);
    }
    mysql_close($objConnect);
    echo json_encode($resultArray);
    ?>

böyle denermisin..

Link to comment
Share on other sites

  • Editor

Veritabanına kaydederken phpmyadminden  karaktertipini utf8_turkish_ci yi seçiceksiniz.Sonrada ams den ver girerken.

hMySQL = MySQL.Connect("localhost", "root", "", "dosya", 0);
MySQL.Query(hMySQL, "SET NAMES 'utf8'");
MySQL.Query(hMySQL, "SET CHARACTER SET utf8");
MySQL.Query(hMySQL, "SET COLLATION_CONNECTION = 'utf8_turkish_ci'");
MySQL.Query("INSERT INTO gelenek(deneme) values('çeşit')");

Bu şekilde veri gönderirseniz.

 

Bu php kodu ile de listeleyin.Herhangi bir sorun yok karakterlerde.

	
	<?php
$con=mysqli_connect("localhost","root","","dosya");
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM gelenek");

while($row = mysqli_fetch_array($result))
  {
  echo $row['deneme'];
  echo "<br>";
  }

mysqli_close($con);
?> 

Plugin olarak bunu kullanın.

 

http://www.mindquake.com.br/en/actions/mysql

Edited by pairs
Link to comment
Share on other sites

@pairs, bu komutlara gerek var mı? Bu komutları kullanmadığım zamanda verileri düzgün görebiliyorum.

 

 

 

  1. hMySQL = MySQL.Connect("localhost", "root", "", "dosya", 0);
  2. MySQL.Query(hMySQL, "SET NAMES 'utf8'");
  3. MySQL.Query(hMySQL, "SET CHARACTER SET utf8");
  4. MySQL.Query(hMySQL, "SET COLLATION_CONNECTION = 'utf8_turkish_ci'");
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.
Note: Your post will require moderator approval before it will be visible.

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.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...