• 03-03-2014, 20:03:58
    #1
    Merhaba arkadaşlar.
    Php ile dinamik ip adresini mailime nasıl alabilirim?

    Amacım aslında şu.
    Bir adet server 2003 kurulu kasam var, 7/24 çalışıyor. Üzerinde de Appserv kurulu. Burada elektrik kesildiği zaman kasam otomatik olarak geri açılıyor ama bu esnada ip adresimde değişiyor. Ben bu ip adresini nasıl öğrenebilirim?
    Yani kasa açıldığı zaman 10 dk sonra ip adresi sorgulama sitesine bağlanıp bunu nasıl mail attırabilirim?

    Teşekkürler, kolay gelsin.
  • 03-03-2014, 20:07:19
    #2
    Bilgisayara cronjob gibi birşey lazım sanırım
  • 03-03-2014, 20:11:32
    #3
    http://www.noip.com/
  • 03-03-2014, 22:18:54
    #4
    Bunu php ile yapmak istiyorum. Bir nevi hobi diyelim
    Cronjab yerine windows zamanlanmış görevler var.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 22:18:54 -->-> Daha önceki mesaj 20:19:42 --

    Cevap verebilecek arkadaşlar yok mu?
  • 03-03-2014, 22:38:18
    #5
    Başlangıc'a şöyle birşey eklersin.

    "C:\Program Files (x86)\Internet Explorer\iexplore.exe" http://localhost/ip.php
    bilgisayar açilinca otomatik http://localhost/ip.php adresini açar.

    ip.php'e bir refresh kodu koyarsin. 10dk'da bir refresh eder.

    son ip'i bir txt e kaydedersin. ip.php ile şu anki ip ile txt'deki ip yi eşleştirirsin.

    eşit değilse mail attirirsin kendine. mail attiktan sonra txt'deki ip'i güncellersin.

    Ekleme;

    ip.php
    <?php
    $file = parse_ini_file("ip.ini");
    if ($file['ip'] != $_SERVER['REMOTE_ADDR']) { //ip değişmiş
        //mail(); //mail işlemleri'ni ayarların
        $fp = fopen('ip.ini', 'w');
        fwrite($fp, 'ip='.$_SERVER['REMOTE_ADDR']); //yeni ip'i yaziyoruz. 
        fclose($fp);
    }
    ?>
    ip.php'nin oldugu klasöre ip.ini oluşturup chmod ayarlarını yapın. yazmada sıkıntı çıkabiliyor.



    başlangıca ekleme olayı için

    regeditte
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entVersion\Run 'a gidin sağ tarafa sağ tik yapip yeni/new key diyerek yolu girebilirsiniz. windows açildiğinda başlayacaktır.
  • 04-03-2014, 07:07:55
    #6
    LaCReMeL adlı üyeden alıntı: mesajı görüntüle
    Başlangıc'a şöyle birşey eklersin.

    "C:\Program Files (x86)\Internet Explorer\iexplore.exe" http://localhost/ip.php
    bilgisayar açilinca otomatik http://localhost/ip.php adresini açar.

    ip.php'e bir refresh kodu koyarsin. 10dk'da bir refresh eder.

    son ip'i bir txt e kaydedersin. ip.php ile şu anki ip ile txt'deki ip yi eşleştirirsin.

    eşit değilse mail attirirsin kendine. mail attiktan sonra txt'deki ip'i güncellersin.

    Ekleme;

    ip.php
    <?php
    $file = parse_ini_file("ip.ini");
    if ($file['ip'] != $_SERVER['REMOTE_ADDR']) { //ip değişmiş
        //mail(); //mail işlemleri'ni ayarların
        $fp = fopen('ip.ini', 'w');
        fwrite($fp, 'ip='.$_SERVER['REMOTE_ADDR']); //yeni ip'i yaziyoruz. 
        fclose($fp);
    }
    ?>
    ip.php'nin oldugu klasöre ip.ini oluşturup chmod ayarlarını yapın. yazmada sıkıntı çıkabiliyor.



    başlangıca ekleme olayı için

    regeditte
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entVersion\Run 'a gidin sağ tarafa sağ tik yapip yeni/new key diyerek yolu girebilirsiniz. windows açildiğinda başlayacaktır.
    Kardeşim cevabın için teşekkür ederim ama ip.php'ye direk curl ile herhangi bir ip öğrenme sitesinden ip'i yazdırsak olmaz mı? Çünkü kodu denediğimde

    Warning: parse_ini_file(ip.ini) [function.parse-ini-file]: failed to open stream: No such file or directory in C:\AppServ\www\ip.php on line 2

    Hatası alıyorum ama ip.ini yi oluşturmuş ve içine local ip i yazmış.

    Teşekkürler
  • 04-03-2014, 08:19:56
    #7
    Ip phpyi ftpye at orayı açtır başlangıçta. Ordan gerekli işlemleri yapıp mail attırırsın.

    GT-I9300 Cihazımdan tapatalk aracılığıyla gönderildi.
  • 04-03-2014, 15:04:39
    #8
    gizemsiz adlı üyeden alıntı: mesajı görüntüle
    Kardeşim cevabın için teşekkür ederim ama ip.php'ye direk curl ile herhangi bir ip öğrenme sitesinden ip'i yazdırsak olmaz mı? Çünkü kodu denediğimde

    Warning: parse_ini_file(ip.ini) [function.parse-ini-file]: failed to open stream: No such file or directory in C:\AppServ\www\ip.php on line 2

    Hatası alıyorum ama ip.ini yi oluşturmuş ve içine local ip i yazmış.

    Teşekkürler
    Mesele ip'i öğrenmek değil, mevcut ip'i bir yere kaydetmek. dosya olur, mysql olur. Ben dosyaya kaydettim.

    ilk açılışta ip.ini yoksa bu hatayi vermesi normal php.ini oluştuğunda 2. de bu hatayi vermemesi gerekiyor.

    Ek: psdbul'un dediği gibi local'de sıkıntı yaşıyorsan aynı dosyalari bir ftp'ye atıp ordan da yapabilirsin.
  • 04-03-2014, 17:37:54
    #9
    PsdBul adlı üyeden alıntı: mesajı görüntüle
    Ip phpyi ftpye at orayı açtır başlangıçta. Ordan gerekli işlemleri yapıp mail attırırsın.

    GT-I9300 Cihazımdan tapatalk aracılığıyla gönderildi.
    LaCReMeL adlı üyeden alıntı: mesajı görüntüle
    Mesele ip'i öğrenmek değil, mevcut ip'i bir yere kaydetmek. dosya olur, mysql olur. Ben dosyaya kaydettim.

    ilk açılışta ip.ini yoksa bu hatayi vermesi normal php.ini oluştuğunda 2. de bu hatayi vermemesi gerekiyor.

    Ek: psdbul'un dediği gibi local'de sıkıntı yaşıyorsan aynı dosyalari bir ftp'ye atıp ordan da yapabilirsin.
    Ama nasıl? pc açılışına sayfa açtırmayı gecikmeli olarak koyarım (modemin bağlanması 2 dk, pc'nin açılması 30 sn) veya php'ye timer atılır gecikmeli çalışır.
    Şimdi 10 dk sonra dış ip'yi nerden sorgulatacağım? sonuçta bir siteden sorgulanması gerekiyor bunun. sonrada çıkan sonucu ip.ini ye kaydedip maile ip.ini ekli dosya olarak attırmak istiyorum. böyle bir koda sahip olan var mı? Google'da arattım ama bir türlü bulamadım.
    Teşekkürler