• 14-12-2016, 05:29:21
    #1
    Merhaba, klasördeki dosyayı search form ile aratmaya çalışıyorum fakat handle döngüsünde problem yaşıyorum

    <?php
    $dizin = "/pdf";
    $search_key = $_GET['q']; 
    echo '<div class="title">'; if($search_key != "") { echo '"<b><i>'.$search_key.'</i></b>" ile ilgili sonuçlar:'; } else { echo 'Tüm dosyalar:'; } echo '</div>';
    if ($handle = opendir("$dizin") or die ("Dizin acilamadi!")) {
    while (false !== ($file = opendir($handle))) {
    $search_word = preg_match("/$search_key/i", "$file");
    if(is_file($dizin."/".$file) && $search_word) {
    $filename = str_replace("/$search_key/i","<i><b>$search_key</b></i>",$file);
    $class = ($css % 2) ? "satir1" : "satir2";
    echo '<div class="'.$class.'"><a href="'.$dizin.'/'.$file.'">'.$filename.'</a> </div>';
    $css++;
    }
    }
    closedir($handle);
    }
    echo '<form method="get" action="search.php">
    * * <input type="text" name="q" size="10">
    * * <input type="submit" value="Ara">
    * * </form>';
    ?>
    yardımcı olabilecek var mı ?
  • 14-12-2016, 20:32:12
    #2
    up .
  • 14-12-2016, 21:26:30
    #3
    Üyeliği durduruldu
    VDS.TC adlı üyeden alıntı: mesajı görüntüle
    up .
    Dizin dosya aramaları için glob fonksiyonundan yararlanabilirsiniz.

    <?php
    
    if($_GET)
    {
    	$dizin = "pdf";
    	$search_key = $_GET['q']; 
    	echo '<div class="title">'; if($search_key != "") { echo '"<b><i>'.$search_key.'</i></b>" ile ilgili sonuçlar:'; } else { echo 'Tüm dosyalar:'; } echo '</div>';
    	$dosyalar = glob("pdf/$search_key*.{pdf}", GLOB_BRACE);
    	$css = 0;
    	foreach($dosyalar as $dosya)
    	{
    	$dosya = pathinfo($dosya);
    	$filename=$dosya["filename"];
    	$file = "".$dosya["dirname"]."/".$dosya["basename"]."";
    	$class = ($css % 2) ? "satir1" : "satir2";
    	echo '<div class="'.$class.'"><a href="'.$file.'">'.$filename.'</a> </div>';
    	$css++;
    	}
    	
    	
    }
    echo '<form method="get" action="">
    <input type="text" name="q" size="10">
    <input type="submit" value="Ara">
    </form>';
    ?>
  • 14-12-2016, 21:35:22
    #4
    Rise adlı üyeden alıntı: mesajı görüntüle
    Dizin dosya aramaları için glob fonksiyonundan yararlanabilirsiniz.

    <?php
    
    if($_GET)
    {
    	$dizin = "pdf";
    	$search_key = $_GET['q']; 
    	echo '<div class="title">'; if($search_key != "") { echo '"<b><i>'.$search_key.'</i></b>" ile ilgili sonuçlar:'; } else { echo 'Tüm dosyalar:'; } echo '</div>';
    	$dosyalar = glob("pdf/$search_key*.{pdf}", GLOB_BRACE);
    	$css = 0;
    	foreach($dosyalar as $dosya)
    	{
    	$dosya = pathinfo($dosya);
    	$filename=$dosya["filename"];
    	$file = "".$dosya["dirname"]."/".$dosya["basename"]."";
    	$class = ($css % 2) ? "satir1" : "satir2";
    	echo '<div class="'.$class.'"><a href="'.$file.'">'.$filename.'</a> </div>';
    	$css++;
    	}
    	
    	
    }
    echo '<form method="get" action="">
    <input type="text" name="q" size="10">
    <input type="submit" value="Ara">
    </form>';
    ?>
    Çok teşekkürler R10+ verdim yardımınız için ama ufak bir sorunum var pm gönderdim müsaitseniz bakarsanız sevinirim.