Jump to content
draketorrent

Keresés

Recommended Posts

Sziasztok!

 

Segítséget szeretnék kérni. Keresőt szeretnék csinálni a weblapomra. Minden film egy külön php-ban vagy txt-ben van, a keresőnek ezekből kellene kiolvasni az adatokat.

Pl: ha valaki rákeres az Aladin-ra, akkor kilistázná melyik fájlok tartalmában szerepel ez a szó. Esetleg előtérbe helyezné azokat a fájlokat, amiknek a fájl nevében is benne van. pl: aladin.php

 

Bármilyen segítség jól jönne!

Share this post


Link to post
Share on other sites

Mysql-be nem lenne sokkal egyszerűbb beleírni a filmek adatait? Akkor a kereső script is sokkal könyebb lenne.

 

Szerkesztve:

 

Most nem kötözködni akartam, de ha így, akarod, akkor így lesz. Írtam neked egy szkriptet, kisebb leírással, hogy értsed mi is folyik itt. Sajnos azt, hogy előre rakja a listában azokat, amik a fájl nevében is benne van, sajnos nem csináltam meg, de remélem így megfelel.

 

<html>
    <form method="post" action="">
        <input type="text" name="find">
        <input type="submit">
    </form>
    
    <?php
        
        if (isset($_POST['find']) && ($_POST['find']) != "")
        {
            $find = strtolower(htmlspecialchars($_POST['find']));
            $dir = "files"; //Ebben a mappában vannak a fájlok
        
            $op = opendir($dir);
            //------------------- Létrehozunk 2 üres tömböt
            $found = Array();
            $megtalalt = Array();
            //------------------
            
            while ($read = readdir($op))
            {
                if ($read != "." && $read != ".." && (substr($read, strlen($read) - 4, 4) == ".php" || substr($read, strlen($read) - 4, 4) == ".txt")) //Kiválogassuk a mappából a .php és .txt kiterjesztésű fájlokat
                {
                    
                    $file = file($dir."/".$read); //Megnyitjuk a fájlokat
                
                    foreach($file as $megnyit)
                    {
                        $keres = strpos(strtolower($megnyit), $find); //A megnyitott fájloknak az összes karakterét kis karakterre alakítsuk, hogy ne legyen külömbség a kis/nagy betűk között.
                        
                        if ($keres == true) //Ha a megnyitott fájlban van olyan szó"részlet" amely megegyezik a keresett szóval,
                        {
                            array_push($megtalalt, $read); //Akkor berakja a találatok tömbjébe a fájl nevét
                        }
                    }
                }
            }
            
            if (count($megtalalt) == 0) //Ha a tömbnek nincs egy eleme se, akkor nincs találat
            {
                print "Nincs találat";
            }
            else //de ha igen, akkor listázza ki
            {
                foreach ($megtalalt as $megtalalt_fajlok) //Aztán a találatok tömböt kiolvassuk
                {
                    print '<a href="'.$dir.'/'.$megtalalt_fajlok.'">'.$megtalalt_fajlok.'</a><br>';
                }
            }
            
        }
    
    ?>
</html>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Bejelentkezés

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×