mysql dn ver çekmek (sitedemdeki veritabanı)

Katılım
1 Mart 2006
Mesajlar
98
Excel Vers. ve Dili
...::Meleğim::...
Merhaba
Bir eticaret sitem var. mysql veritabı var. bu sitemin veritabanından siparişler tablosunu excele çekebilirmiyim acaba?
Bu kondua yardımcı olursanız sevinirim
Saygılarımla
 

Mehmet Şahin

Destek Ekibi
Destek Ekibi
Katılım
13 Ekim 2005
Mesajlar
1,408
Excel Vers. ve Dili
Excel 2010 - 2013 Türkçe - İngilizce
Merhaba,
bildiğim kadarı ile hosting şirketleri
panel dışında veritabanına erişime izin vermiyorlar.
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Öncelikle Mehmet Bey'in dediği gibi eğer ulaşabiliyorsanız panelden veritabanı ve kullanıcı yönetiminden
sizin IP adresinize yetki vermeniz ya da hizmet aldığınız yerden sizin IP'niz için yetki vermelerini istemeniz gerekiyor.

Sonrasında https://dev.mysql.com/downloads/connector/odbc/3.51.html adresinden işletim sisteminize göre (32bit/64bit) ilgili Connector'ı yükleyin.

En sonunda da aşağıda kodları kullanabilirsiniz. Kırmızı renk ile belirttiğim yerlere sitenize ait bilgileri gireceksiniz.

Kod:
[FONT="Trebuchet MS"][SIZE="2"]Sub Emre()
    Set rs = CreateObject("Adodb.Recordset")
    Set con = CreateObject("Adodb.Connection")
    Server_Name = "[COLOR="Red"]Buraya Server IP ya da Web Site Adı[/COLOR]"
    Database_Name = "[COLOR="red"]Buraya Veritabanı Adı[/COLOR]"
    User_ID = "[COLOR="red"]Buraya Kullanıcı Adı[/COLOR]"
    Password = "[COLOR="red"]Buraya Parola[/COLOR]"
    port = "3306"
    con.Open = "Driver={[COLOR="blue"]MySQL ODBC 3.51 Driver[/COLOR]};Server=" & Server_Name & _
                    ";Port=" & port & _
                    ";Database=" & Database_Name & _
                    ";User=" & User_ID & _
                    ";Password=" & Password & _
                    ";Option=4;"
    MsgBox "bağlandı"
    sorgu = "Select * from [COLOR="red"]tabloadı[/COLOR]"
    rs.Open sorgu, con, 1, 3
    Range("A2").CopyFromRecordset rs
    rs.Close: con.Close
End Sub[/SIZE][/FONT]
 
Katılım
15 Mayıs 2015
Mesajlar
518
Excel Vers. ve Dili
Microsoft Office 2019
Altın Üyelik Bitiş Tarihi
26/06/2023
Osman Bey Merhaba ;

ilk olarak paylaştığınız kodu arıyordum . Direk çalıştır teşekkürler

Mysql veri ekleme yapabildim. Çalışıyor

Bir iki sorum olacak size


Birincisi veri eklerken türkçe karakter sorunu yaşıyorum. Hem latin 5 denedim hem utf 8 . myphpadmin den listeyi gözatıyorum . türkçe karakter sorunu var.

Bu konuda yardımınızı bekliyorum
Kod:
Private Sub CommandButton1_Click()
' KAYIT EKLEME*******************

    Set rs = CreateObject("Adodb.Recordset")
    Set con = CreateObject("Adodb.Connection")
    Server_Name = "www.******.com.tr"
    Database_Name = "*****"
    User_ID = "*****"
    Password = "*****"
    port = "3306"
    con.Open = "Driver={MySQL ODBC 3.51 Driver};Server=" & Server_Name & _
                    ";Port=" & port & _
                    ";Database=" & Database_Name & _
                    ";User=" & User_ID & _
                    ";Password=" & Password & _
                    ";Option=4;"
   
    sorgu = "Select * from firma"
    rs.Open sorgu, con, 1, 3
    rs.Addnew


rs("kod").Value = Range("kod").Value
rs("fadi").Value = Range("fadi").Value
rs("fadres").Value = Range("fadres").Value
rs("sadi").Value = Range("sadi").Value
rs("sadres").Value = Range("sadres").Value
rs("vergino").Value = Range("vergino").Value
rs("vergida").Value = Range("vergida").Value
rs("telefon").Value = Range("telefon").Value
rs("fax").Value = Range("fax").Value
rs("email").Value = Range("email").Value
rs("kisi").Value = Range("kisi").Value

rs.Update
    
    rs.Close: con.Close
İkincisi veri sorgulamada sorun yaşıyorum. Sorgu yöntemimde hata var.

Kod:
Private Sub CommandButton3_Click()
' KAYIT EKLEME*******************

    Set rs = CreateObject("Adodb.Recordset")
    Set con = CreateObject("Adodb.Connection")
    Server_Name = "****"
    Database_Name = "***"
    User_ID = "***"
    Password = "***"
    port = "3306"
    con.Open = "Driver={MySQL ODBC 3.51 Driver};Server=" & Server_Name & _
                    ";Port=" & port & _
                    ";Database=" & Database_Name & _
                    ";User=" & User_ID & _
                    ";Password=" & Password & _
                    ";Option=4;"
   
   
    sorgu = "Select * from firma where kod='Range("kod").Value '"
    rs.Open sorgu, con, 1, 3
   
If rs.RecordCount > 0 Then
 On Error Resume Next
  Range("kod").Value = ""
 Range("fadi").Value = ""
Range("fadres").Value = ""
  Range("sadi").Value = ""
Range("sadres").Value = ""
 Range("vergino").Value = ""
 Range("vergida").Value = ""
 Range("telefon").Value = ""
Range("fax").Value = ""
  Range("email").Value = ""
Range("kisi").Value = ""
 Range("kod").Value = rs("kod").Value
 Range("fadi").Value = rs("fadi").Value
Range("fadres").Value = rs("fadres").Value
  Range("sadi").Value = rs("sadi").Value
Range("sadres").Value = rs("sadres").Value
 Range("vergino").Value = rs("vergino").Value
 Range("vergida").Value = rs("vergida").Value
 Range("telefon").Value = rs("telefon").Value
Range("fax").Value = rs("fax").Value
  Range("email").Value = rs("email").Value
Range("kisi").Value = rs("kisi").Value

Else
MsgBox "CİHAZ KAYITLI DEĞİL ! LÜTFEN BİLGİLERİ ELLE DOLDURUN VE KAYIT EDİN"
End If
    
    rs.Close: con.Close
End Sub
Konu hakkında yardımlarınızı bekliyorum. İyi Çalışmalar
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Merhaba Sn. hlojan,

Öncelikle adım Murat.

Sitenizin alt yapısı nedir?
WordPress?
OpenChart?
vs.
 
Katılım
15 Mayıs 2015
Mesajlar
518
Excel Vers. ve Dili
Microsoft Office 2019
Altın Üyelik Bitiş Tarihi
26/06/2023
Murat bey

www.metrolojistik.com.tr
siteyi kendim düzenledim
phpadmin den veri türü charset latin5 ve utf 8 denedim ama olmadı
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Anladım.

WordPress veya OpenChart olsaydı daha net yardımcı olabilirdim.

Ben ayarlar için bu kodları kullanıyorum.

Kod:
[SIZE="2"]<?php
header("Content-Type: text/html; charset=utf-8");  
$host = "localhost";
$dbadi = "vtadi"; // Veritabanı ismi
$dbkadi="kul.adi"; // Veritabanı kullanıcı adı
$dbsifre = "vtparola"; // Veritabanı şifresi

$baglanti = @mysql_connect($host,$dbkadi,$dbsifre) or die ("Veritabanı bağlantısı yapılamadı.");
mysql_select_db($dbadi,$baglanti) or die ("Veritabanı seçilemedi.");

mysql_query("SET NAMES 'UTF8'");
mysql_query("SET character_set_connection = 'UTF8'");
mysql_query("SET character_set_client = 'UTF8'");
mysql_query("SET character_set_results = 'UTF8'");

?>[/SIZE]
Normalde yeterli oluyor ama yine de Türkçe karakterleri değiştirip veritabanına yüklerken tekrar dönüştürme işlemini de gerçekleştiriyorum.

Bu kodlarla sayfadaki Türkçe karakterleri değiştiriyorum.
Kod:
[SIZE="2"]Sub Degistir()
    Cells.Replace What:="ç", Replacement:="(/*1)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Replace What:="Ç", Replacement:="(/*2)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Replace What:="ğ", Replacement:="(/*3)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Replace What:="Ğ", Replacement:="(/*4)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="ü", Replacement:="(/*5)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="Ü", Replacement:="(/*6)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="ş", Replacement:="(/*7)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="Ş", Replacement:="(/*8)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="ö", Replacement:="(/*11)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="Ö", Replacement:="(/*12)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="é", Replacement:="(/*13)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
    Cells.Replace What:="İ", Replacement:="(/*14)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False
        Cells.Replace What:="ı", Replacement:="(/*10)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False ', LookAt:=XlPart
End Sub[/SIZE]

Bu Php fonksiyonu ile de tekrar Türkçe'ye çeviriyorum.

Kod:
[SIZE="2"]/*
ç => (/*1)
Ç => (/*2)
ğ => (/*3)
Ğ => (/*4)
ü => (/*5)
Ü => (/*6)
ş => (/*7)
Ş => (/*8)
İ => (/*9)
ı => (/*10)
ö => (/*11)
Ö => (/*12)
é => (/*13)
İ => (/*14)
*/
function v_($veri){
$veri = str_replace("(/*1)","ç",$veri);
$veri = str_replace("(/*2)","Ç",$veri);
$veri = str_replace("(/*3)","ğ",$veri);
$veri = str_replace("(/*4)","Ğ",$veri);
$veri = str_replace("(/*5)","ü",$veri);
$veri = str_replace("(/*6)","Ü",$veri);
$veri = str_replace("(/*7)","ş",$veri);
$veri = str_replace("(/*8)","Ş",$veri);
$veri = str_replace("(/*9)","İ",$veri);
$veri = str_replace("(/*10)","ı",$veri);
$veri = str_replace("(/*11)","ö",$veri);
$veri = str_replace("(/*12)","Ö",$veri);
$veri = str_replace("(/*13)","é",$veri);
$veri = str_replace("(/*14)","İ",$veri);
$veri = str_replace("(noktalıvirgul)",";",$veri);
return $veri;
}[/SIZE]
Bu arada, sitenizdeki Teklif menüsünde Kariyer yazıyor.
 
Katılım
15 Mayıs 2015
Mesajlar
518
Excel Vers. ve Dili
Microsoft Office 2019
Altın Üyelik Bitiş Tarihi
26/06/2023
Anladım.
Basit bir yöntemi yok. Ben sitemden bağımsız mysql tablosunu excelde kullanmak istiyiyorum

Kod:
Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=dbtest; User=user1;Password=mysql;Option=3;CharSet=utf8;
Dün gece 2 3 saat araştırdım bu kodu buldum ama charset ekleniyormuş ama sizin koda uyarlayamadım

Sub Değiştir kodlarını deneyeceğim.

Bu arada Php de baya amatörüm. Kodları çözüyorum ve büyük zevk alıyorum. Kariyer teklif farkını farkındayım. İnaşşlah öğrendikce toparlıcam siteyi

https://www.connectionstrings.com/mysql-connector-odbc-3-51/

Bu siteden baya denedim ama sizin koda otutturamadım :D option mantığı 4 sizde bendeki 3
kafam karıştı :)

birde : ; " ' gibi ayraçları tutturamıyorum

:D

İlginiz için teşekkür ederim
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Php versiyonuna göre değişiyor diye biliyorum.
Benim de pek bir bilgim yok ancak deneme yanılma araştırma üzerine bir şeyler karalıyorum. :eek:k::

Bağlantı metnine CharSetibu şekilde ekleyebilirsiniz;
Kod:
[SIZE="2"]    con.Open = "Driver={MySQL ODBC 3.51 Driver};Server=" & Server_Name & _
                    ";Port=" & port & _
                    ";Database=" & Database_Name & _
                    ";User=" & User_ID & _
                    ";Password=" & Password & _
                    ";Option=4;" & _
                    "[COLOR="Red"];CharSet=utf8;[/COLOR]"[/SIZE]
Sizin yerinizde olsam; bu konu ile alâkalı PHP desteği veren bir yerde çözüm arardım.
 
Katılım
15 Mayıs 2015
Mesajlar
518
Excel Vers. ve Dili
Microsoft Office 2019
Altın Üyelik Bitiş Tarihi
26/06/2023
Oley beeeeee :D
Kod:
   con.Open = "Driver={MySQL ODBC 3.51 Driver};Server=" & Server_Name & _
                    ";Port=" & port & _
                    ";Database=" & Database_Name & _
                    ";User=" & User_ID & _
                    ";Password=" & Password & _
                    ";Option=4;" & _
                    ";CharSet=latin5;"
                    
    sorgu = "Select * from firma "
    rs.Open sorgu, con, 1, 3
https://yadi.sk/i/GnxE6EfB3Cf4LQ

utf8 yerine latin 5 deneyince oldu. Teşekkürler murat bey


Murat bey ilk mesajımda 2.sorumda yardımcı olabilirmisiniz

Eklemeyi yaptım. Bulma ve güncelleme yapmak istiyorum. Normalde Ado ile Acces kodlarım var ama Mysql da çalışmadı

Sorguyu yazsanız yeter ben tamamlarım
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Yardımcı olabildiğime sevindim. :)

Bu şekilde deneyiniz.

Kod:
[SIZE="2"]sorgu = "Select * from firma where kod='" & Range("kod").Value & "'"[/SIZE]
 
Üst