Şimdi Ara

PHP Diziler ile ilgili bir sorum olucaktı.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
6
Cevap
0
Favori
748
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Aşağıda verdiğim kod ile ilgili olarak şöyle bir sorum olucak.
    Dışarıdan text'e girilen bilgiyi bu sayfaya GEt methodu ile çektim ve bir dizi tanımladım.Dizi içerisinde mail uzantılarını yazdım.Mail uzantı kontrolü yaptırmak istiyorum.
    Kod çalışıyor ama ufak bir kısım kaldı.Ben mail uzantısını ilgili text'e yazdığımda array içerisinde var ise AJAx methodu ile ekrana yazıyor ve bana gösteriyor.Benim istediğim.İse hotmail.com yazdığında hotmail.com uyarı olarak çıkıyor.Ama htmail.com yazdığında bulunamadı veya uzantıların tamamı yerine harf kontrolü yaparak htmail.com dediğinde direkt hotmail.com uzantısını çıkarmasını istiyorum.Yazmış olduğum bu koda nasıl bir kod yazmalıyımki bunu sağlamam için.
    Yardımınız için teşekkürler.
    quote:


    <?php
    $array = array(0=>"hotmail.com",1=>"gmail.com",2=>"yahoo.com",3=>"mynet.com",4=>"mail.com");
    $zero = $array[0];
    $one = $array[1];
    $two = $array[2];
    $three = $array[3];
    $four = $array[4];
    $q = $_GET["q"];

    if($q == $zero){
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    else if($q == $one){
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    else if($q == $two){
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    else if($q == $three){
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    else if($q == $four){
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    else{
    $hint="";
    for($i=0; $i<count($array); $i++){
    if (strtolower($q)==strtolower(substr($array[$i],0,strlen($q)))){
    if ($hint==""){
    $hint=$array[$i];}
    else{
    $hint=$hint." , ".$array[$i];}
    }
    }
    }
    if ($hint == "" || $hint == NULL){
    $response="<b style='font-size:12px;'>".$zero.",".$one.",".$two.",".$three.",".$four."</b>";}
    else{
    $response="<b style='font-size:12px;'>".$hint."</b>";}
    echo $response;
    ?>



    < Bu mesaj bu kişi tarafından değiştirildi hacckteam -- 7 Aralık 2012; 16:19:38 >







  • http://www.codekodu.com/konu_Bir_metinde_Arama_Yapmak_strstr___kod_1684.html

    Metin fonksiyonlarını incelemeni tavsiye ederim. Daha önce ihtiyacım olmadığı için pek ilgilenmemiştim bu konuyla ancak araştırırsan bu konuyla ilgili sorununu çözebileceğini düşünüyorum. Üstteki adreste bence tam senin istediğin gibi bir program var.



    < Bu mesaj bu kişi tarafından değiştirildi zapdos93 -- 7 Aralık 2012; 16:02:08 >
  • LİNKTEKİ ÖRNEKTE KULLANILAN strstr YANİ BİR DEĞİŞKENE ATANMIŞ CÜMLE İÇERİSİNDEN HERHANGİ BİR KELİMEYİ strstr($metin,"zor") ŞEKLİNDE YAZARAK BULUYOR.ZATEN BUNU DENEDİM BEN ÜSTADIM.DENEDİM DIŞARIDAN GİRİLEN GET METHODU İLE ALDIĞIM q DEĞERİNİ strstr($array, $q) ŞEKLİNDE YAZDIM AMA HATA VERDİ.
  • quote:

    Orijinalden alıntı: hacckteam

    LİNKTEKİ ÖRNEKTE KULLANILAN strstr YANİ BİR DEĞİŞKENE ATANMIŞ CÜMLE İÇERİSİNDEN HERHANGİ BİR KELİMEYİ strstr($metin,"zor") ŞEKLİNDE YAZARAK BULUYOR.ZATEN BUNU DENEDİM BEN ÜSTADIM.DENEDİM DIŞARIDAN GİRİLEN GET METHODU İLE ALDIĞIM q DEĞERİNİ strstr($array, $q) ŞEKLİNDE YAZDIM AMA HATA VERDİ.

    Verecek tabiki.
    Neden?

    Çünkü $array'de tanımlı 5 farklı terim var. Ve sen istemişsin ki

    strstr($array, $q)
    $q=mutluemre93@gmail.com
    // Örneğin $q'ya gelen değer bu olsun.

    $array içerisinde $q geçen yazıyı bul. Program da arıyor. Arıyor ancak $array diye bir değişken tanımlamamışsın ki neyi arasın. Eğer $array[1] yazsaydın, bu değikende tanımlı olan gmail.com'un içerisinde mutluemre93@gmail.com'u arayacaktı. Ancak yine birşey bulamayacaktı. Çünkü gmail.com ifadesinin içerisinde mutluemre93@gmail.com diye bir ifade yok.

    Eğer şu şekilde yazdırsaydın hiçbir sorun olmazdı:
    strstr($q, $array[1])
    strstr(burada metin, burada metin içerisinde aranacak olan kelime)

    Seninle birlikte bende çalıştım. Bu kodlar üzerinden gidersen daha kolay anlayacağını düşünüyorum. Bu dosyaları notepad++ yardımıyla UTF-8 Bomsuz Olarak kayıt et.

    Kolay gelsin.

    a.php
    quote:

    <?php
    header ("Content-Type: text/html; charset=UTF-8");
    ?>
    <HTML>

    <HEAD>

    <TITLE>PHP de Formlar</TITLE>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-9">

    </HEAD>

    <BODY>

    <FORM ACTION="b.php" METHOD="GET">

    Adınız, Soyadınız: <INPUT TYPE="TEXT" NAME="adi">

    <br>

    Elektronik Adresiniz: <INPUT TYPE="TEXT" NAME="adres">

    <br>

    Başka: <INPUT TYPE="TEXT" NAME="baska">

    <br>

    <INPUT TYPE="SUBMIT" VALUE="Gönder Gitsin!"> <INPUT TYPE="RESET" VALUE="Vazgeç, Gönderme!">

    </FORM>

    </BODY>

    </HTML>


    b.php
    quote:


    <?php
    header ("Content-Type: text/html; charset=UTF-8");

    $adi = $_GET['adi'];
    $adres = $_GET['adres'];
    $baska = $_GET['baska'];

    $array = array(0=>"hotmail.com",1=>"gmail.com",2=>"yahoo.com",3=>"mynet.com",4=>"mail.com");
    $zero = $array[0];
    $one = $array[1];
    $two = $array[2];
    $three = $array[3];
    $four = $array[4];

    echo "Adı: ";
    echo $adi;
    echo "<br>";
    echo "Adres: ";
    echo $adres;
    echo "<br>";
    echo "Başka: ";
    echo $baska;
    echo "<br>";

    if ( strstr($adres, $one)){
    echo "Bu bir gmail.com uzantısıdır.";
    }else{
    // Burayı boş bıraktım. Çünkü eğer gmail.com değil ise diğer sorguya geçmesi gerekir. Kullanıcının gmail olmadığını bilmesine gerek yok.
    }


    ?>



    < Bu mesaj bu kişi tarafından değiştirildi zapdos93 -- 7 Aralık 2012; 17:51:10 >




  • CEVABIN İÇİN TEŞEKKÜRLER.
    AMA SEN YAZANA KADAR ZATEN KENDİM AYNI ŞEKİLDE YAZDIM KODLARI.
    İLGİN İÇİN TEŞEKKÜR EDERİM.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.