Şimdi Ara

php ile text içindeki bir cep numarasını değişken olarak nasıl atayabilirim

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
12
Cevap
0
Favori
808
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba arkadaşlar
    Benim şöyle bir problemim var
    Kullanıcıların gönderdiği mesajların içine yazılan telefon numarası ile orjinal numaralarını karşılaştırmak istiyorum
    örnek olarak:
    Merhaba adım mehmet. telefon numaram 5321111111.
    oysa orjinal numarası database de 5322222222 olarak kayıtlı.
    ben textdeki numarayı bulup bi değişken olarak atayarak orjinal numarayla karşılaştırarak fonksiyon üretmek istiyorum.


    bunun sorunuma yardımcı olursanız sevinirim.
    Şimdiden Teşekkürler



  • Bu çok zor bi program. Çünkü hem numara sayısını hem telefon numaram gibi kelimeleri takip edip etmediğini hemde rakamların bilinen telefon kod noları ile başlayıp başlamadığını denetletmen gerekiyor. Bütün bu sınamaları geçtikten sonrada iki noyu karşılaştıracaksın ki bu kolay kısmı. Bana biraz lüzumsuz bişey gibi geldi.
  • Tam oLarak ne yapmak istediğini Yazarsan bunu YapabiLirim..

    ama biraz daha açık yaz..
  • Söyle;
    Bir ilan sayfası düşünün. Bu ilan sayfasında önceden telefon numaraları onaylı üyeler var. Fakat üyeler ilan gönderdiğinde ilanın içeriğinde telefon numarası yayınlaması gerekiyor. Ve haliyle orjinal onaylı numarayla eşleştirip sorgulamak istiyorum. Eğer kullanıcının onaylı numarası ile eşleşmiyorsa ilanın içindeki numarayı silmek istiyorum
  • eğer Tel numarası Ayrı bi text box içinde değiLse yapması nerdeyse imkansız..

    ayrı bir yerde ise

    ozman şoyLe diyeLim..


    OnayLı oLan teLefon numarası kayıtLı mı ? veritabanına bağLantını yap once ki yapılmıştır bu ..


    $telsor=mysql_query("SELECT from tabloyu_yaz WHERE uyeadi_bolumunu_yaz=$username");

    $telsonuc=mysq_fetch_row($telsor);

    şimdi geLdik eşLeşmeye...

    if ($telsonuc[telno] = $verilentel ) { echo "$telsonuc[telno]";}


    Sadece Uyuşuyorsa yazar...


    ya da kullanmak istediğin siteyi verirsen ya da dellytufy@hotmail.com ekLersen yardımcı oLabiLirim..

    koLay geLsin..
  • hala bu sorunu çözebilmiş değiliz.
    database kısmını açıklayayım (mysql)
    id mesaj tel
    1 merhaba ben ali numaram 53287654321 bye bye 5324446677

    mesaj bölümündeki telefon numarası ile tel bölümündeki numara eğer uyuşmazsa mesaj bölümündeki numarayı silip yerine xxx koymasını istiyorum.veya sadece mesajın içeriğindeki telefon numarasını silmesini.burda şöyle bi problem daha var.
  • Tablo yapınızı şu şekilde gösterirsek sanırım daha iyi olur.

     
    id mesaj tel
    1 merhaba ben ali numaram 53287654321 bye bye 5324446677
    2 merhaba ben kemal numaram 53527714840 53527714840



    < Bu mesaj bu kişi tarafından değiştirildi MaviAteş -- 20 Ocak 2008; 12:51:05 >
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • tel nolarını sen ver. mesajın içinde sayı kullanmalarını engelle
  • Engelleyemem çünkü mesajlar sms ile gönderiliyor.web den değil yani.
  • diger mesaja cevap yazmistim kullandigin dil nedir anlamamistim bu isine yarar sanirim.
    subject i sms, orjinalTel i adamin uye olurken kullandigi tel no ile degistirirsen result sms deki tel no lari degismis string olur.
    ama farkli tel kullanmak isteyen regular expression bilen biri bunu atlatir.
    ornegin yazilan tel no illaki 11 haneli olmak zorunda 10 hane tel no girildiginde asagidaki kod degisiklik yapmaz.

    $result = ereg_replace('\\b(\\d{4})[ -]?(\\d{3})[ -]?(\\d{2})[ -]?(\\d{2})\\b', $orjinalTel, $subject);

    bu 11 yada 10 haneli tel nolari degistirir:
    $result = ereg_replace('\\b(\\d)?[ -]?(\\d{3})[ -]?(\\d{3})[ -]?(\\d{2})[ -]?(\\d{2})\\b', $orjinalTel, $subject);

    ama dedigim gibi ben illaki farkli numara yazacam diyen biri numaralarin nasil degistirildigini anlarsa sistemi atlatabilir.
  • Cevabın için sağol arkadaşım ama maalesef her hangi bir üyelik sistemi yok. gelen bilgiler sadece mesaj ve mesajın gönderildiği telefon numarası. Bunlar direkt olarak kayıt ediliyor. Üyelik gibi olsaydı elbette daha rahat olurdu. Bir başka sorun ise bırakın 10 haneli yerine 11 haneli yazmayı bazen numara aralarına özel karakterler koyuyolar dikkat çeksin diye. Bunu nasıl çözücem bilmiyorum valla. Sırf bu durumdan dolayı çok iş gücü kaybı oluşuyor.
  • Rakam kullanmayı önlemek bence en kesin çözüm.
    Bunu engellemek için SMS 'e özel bir şey yapılamazsa veritabanına kayıt edilme anında Php ile yapabilirsiniz. Yani gelen numarayı veritabanına eklemeden önce içindeki sayıları silebilirsiniz.

    Şimdi kişi kendi numarasını ekranda yayınlayabilsin sorusuna bir cevap bulmak gerekiyor.
    Bunun içinde forumlarda kullanılan BBCODE ismi verilen özel kodlama mantığını kullanabilirsiniz.

    Şöyle ki: Telefon numarasını ekranda yazdırmak isteyen kişiden numarasını yazmamasını, yazdığı takdirde ekranda yayınlanmayacağını söylersiniz.
    Bunun yerine <numaram> yazmasını söylersiniz. Gelen SMS veritabanına yazılırken içinde <numaram> diye bir kayıt olup olmadığı sorgulanır eğer varsa metin içinden <numaram> bölümü silinir ve onun yerine SMS'i gönderen kişinin numarası yazılır.



    Örnek SMS :
    Gönderen: 05551234567
    İleti : merhaba ben kemal numaram 53527714840

    Gönderen: 05551234567
    İleti : Saygılar ben mustafa numaram 05551234567

    Gönderen: 05551234567
    İleti : Ankaradan kemal numaram <numaram>

    Gönderen: 05551234567
    İleti : slm ben ahmet numaram 535 167_40*07

    Veritabanına yapılan kayıtlar

     
    id mesaj tel
    1 merhaba ben kemal numaram 05551234567
    2 Saygılar ben mustafa numaram 05551234567
    3 Ankaradan kemal numaram 05551234567 05551234567
    4 slm ben ahmet numaram _* 05551234567


    PHP'nin eregi_replace() fonksiyonu ile burada anlatılan işlemleri yapabilirsiniz.




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.