1 Star2 Stars3 Stars4 Stars5 Stars
Loading...Loading...

» MySQL Import – მონაცემთა ბაზის იმპორტი PHP-ს საშვალებით

მოგესალმებით 😉

გთავაზობთ პატარა გამოსადეგ ფუქციას, რომლის საშვალებითაც შეძლებთ მონაცემთა ბაზების იმპორტს ანუ ინსტალირებას.

function import($fileName, $sqlDbName="")
{
    //ყველა არსებული ცხრილების წაშლა
    if (!empty($sqlDbName))
    {
        if ($result = mysql_query("SHOW TABLES FROM $sqlDbName"))
        {
            while($row = mysql_fetch_row($result))
                mysql_query("DROP TABLE $sqlDbName.$row[0];");
        }
    }
 
    //იმპორტი
    $lines = file($fileName);
    //იგნორირების მასივები
    $str2Arr = array("--", "/*");
    $str4Arr = array("LOCK", "DROP");
    $str6Arr = array("UNLOCK");
 
    $tmpLine = "";
    $i = 0;
    //წაკითხული sql ფაილის ხაზებად წაკითხვა
    foreach ($lines as $line)
    {
        //გასუფთავება
        $lineClear = trim(preg_replace('/\s+/', ' ', $line));
 
        //იგნორის ფილტრი
        if ($lineClear == '' || in_array(substr($lineClear, 0, 2), $str2Arr))
            continue;
 
        //ათვისება
        $tmpLine .= $lineClear;
 
        //query-ის დასასრული
        if (substr($lineClear, -1, 1) == ';')
        {
            //გასუფთავება
            $query = trim(preg_replace('/\s+/', ' ', $tmpLine));
 
            //იგნორის ფილტრი
            if (!in_array(substr($query, 0, 4), $str4Arr) && !in_array(substr($query, 0, 6), $str6Arr))
            {
                //შექმნილი ცხრილების დათვლა
                if(substr($query, 0, 6) == "CREATE")
                    $i++;
                //იმპორტირება
                mysql_query($query) or print("Error query \"$query\" : ".mysql_error()."<br><br>");
            }
            $tmpLine = "";
        }
    }
    echo "<script>alert('სულ განხორციელდა $i ცხრილის იმპორტი.');</script>";
}

ფუნქციის გასაშვებად აუცილებელია MySQL-თან კავშირი, შემდგომ ზედა ფუნქციის გაშვება.
ფუნქციაში “$fileName”-ს უნდა მივანიჭოთ ბაზის ფაილის სახელი მაგალითად “database.sql”, ხოლო “$sqlDbName”-ს თუკი მივანიჭებთ მონაცემთა ბაზის სახელს, მაშინ იმპორტამდე მოხდება ყველა მასში არსებული ცხრილების ავტომატური წაშლა და შემდგომ იმპორტი, მაგალითად :

import(“database.sql”, “myBaseName”);

ფუნქციაში შეგიძლიათ ჩაამატოთ ფაილის არსებობის შემოწმება.
იმედია გამოგადგებათ, მე გავტესტე საკმაოდ დიდი მოცულობის მონაცემთა ბაზებზე და მშვენივრად მუშაობს 😉 …

© აქ გამოქვეყნებული ნებისმიერი რესურსის გამოყენება, დასაშვებია მხოლოდ მისივე გვერდის ბმულის წყაროდ მითითებით!

2 კომენტარი ამ პოსტზე↓

ჩანიშნე ქვედა კომენტარების RSS 2.0 წყარო.
  1. გოგა ამბობს:
    9 მარტი, 2015წ. 22:58სთ.

    გამარჯობათ ძალიან მინდა საიტის გაკეთება მაგრამ ნორმალური უფასო ჰოსტინგი ვერ ვნახე თუ იცით უფასო კარგი ვებჰოსტინგი გთხოვთ მომწეროთ ამ იმეილზე beradzegoga@gmail.com.

    კარგია თუ ცუდი: Thumb up 0 Thumb down 0

  2. ნეო ამბობს:
    22 ივნისი, 2016წ. 23:32სთ.

    გამარჯობათ!უფასო ჰოტზე მინდა რამე გაცნობის სკრიპტი დავაყენო,და ვერაფერი გაუგე ამ პჰპ -ს გთხოვთ ყველაფერი გამაკეთებინეთ,როგორ ჩავრთო გვერდი,როგორ მივაბა დომეინი,როჰორ გავხსნა გვერდი მთავარი რაუნდა გავაკეთო რო საიტი ჩაირთოს,დსნ როგორ გავაკეთო,ყველაფერი წარმოიდგინეთ რო არაფერი მაქვს და რით დვიწყო,მატო ჰოსტი მააქვს და მეტი არაფერი,დამეხმარეთ ვინმე ძალიან გთხოვთ.დამიმაილეთ ვინმემ პაილი სადაც ყველაფერი იქნება ახსნილი

    კარგია თუ ცუდი: Thumb up 0 Thumb down 0

დატოვე კომენტარი↓

*გთხოვთ წეროთ ქართული ასოებით

 

 

XHTML: დამხმარე კოდები: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

10 votes, average: 4.50 out of 510 votes, average: 4.50 out of 510 votes, average: 4.50 out of 510 votes, average: 4.50 out of 510 votes, average: 4.50 out of 5

› აკაკი წერეთელი: შობა

აღმოსავლეთით გამოჩნდა
ვარსკვლავი „სჯულის ცნობისა“,
ჯერ უნახველი კაცთაგან,
უცნაურ სხივოსნობისა!
გაჰკვირდენ ვარკვლავთ მრიცხველნი,
ვერ მისწვდა მათი გონება…
ინიშნეს მხოლოდ მოგვებმა
და იგრძნეს უფლის მონება.
ჰფიქრობდნენ ქვეყნის მპყრობელის
ამ ქვეყნად დაბადებასა;
თან მიჰყვნენ ვარსკვლავს მიმავალს,
ჰგალობდნენ ქებათ-ქებასა.
გაჩერდა ბეთლემს მნათობი,
ქვაბზე › › ›

DU