Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Import iz csv fajla u mysql bazu php

[es] :: PHP :: Import iz csv fajla u mysql bazu php

[ Pregleda: 1125 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ekonomist30
Sanel Bajric
SANELDESIGN-Web developing and
programming
SANELDESIGN
Sarajevo

Član broj: 197541
Poruke: 76
92.36.191.*

Sajt: saneldesign.com


+6 Profil

icon Import iz csv fajla u mysql bazu php15.06.2012. u 22:23 - pre 143 meseci
Pozdrav svima

Napravio sam dva fajla:

1. Konekcija

Code:
<?php
$db = mysql_connect("baza", "korisnik", "lozinka") or die("Nema konekcije.");
 
if(!$db) 
 
    die("nema baze");
 
if(!mysql_select_db("Nazivbaze",$db))
 
     die("Baza nije odabrana.");


Ovo je samo definisanje konekcije na bazu. I.

upload.php:

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Import fajla</title>
<style type="text/css">
body {
    background: #E3F4FC;
    font: normal 14px/30px Helvetica, Arial, sans-serif;
    color: #2b2b2b;
}
a {
    color:#898989;
    font-size:14px;
    font-weight:bold;
    text-decoration:none;
}
a:hover {
    color:#CC0033;
}
 
h1 {
    font: bold 14px Helvetica, Arial, sans-serif;
    color: #CC0033;
}
h2 {
    font: bold 14px Helvetica, Arial, sans-serif;
    color: #898989;
}
#container {
    background: #CCC;
    margin: 100px auto;
    width: 945px;
}
#form             {padding: 20px 150px;}
#form input     {margin-bottom: 20px;}
</style>
</head>
<body>
<div id="container">
<div id="form">
 
<?php
 
include "konekcija.php"; //Povezivanje na bazu u koju importujemo csv, koristimo predefinisani konekcija.php
 
$deleterecords = "TRUNCATE TABLE tablename"; //praznjenje tabele - ako je potrebno, ako ne ova linija koda ce biti zaobidjena kroz drugu konfiguraciju
mysql_query($deleterecords);
 
//Upload CSV fajla
if (isset($_POST['submit'])) {
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
        echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>";
        echo "<h2>Displaying contents:</h2>";
        readfile($_FILES['filename']['tmp_name']);
    }
 
    //Import u bazu podataka podataka iz CSV fajla, okviran primjer komande, sve funkcije koje treba da se odrade pri importu se stavljaju ispod ovog komentara
    $handle = fopen($_FILES['filename']['tmp_name'], "r");
 
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $import="INSERT into tablename(item1,item2,item3,item4,item5) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]')";
 
        mysql_query($import) or die(mysql_error());
    }
 
    fclose($handle);
 
    print "Import done";
 
    //Forma za upload koja se koristi pri CSV upload-u
}else {
 
    print "Upload novog csv fajla<br />\n";
 
    print "<form enctype='multipart/form-data' action='upload.php' method='post'>";
 
    print "Datoteka za uvoz:<br />\n";
 
    print "<input size='50' type='file' name='filename'><br />\n";
 
    print "<input type='submit' name='submit' value='Upload'></form>";
 
}
 
?>
 
</div>
</div>
</body>
</html>



E sada mi je mozak zablokirao.
Naime, ovom metodom cu u tabelu u bazi koju definisem i polja uvesti podatke iz csv file-a.

Ali, moze li pomoc oko neceg malo komplikovanijeg:

Recimo da u tabeli u bazi imamo ID A/I npr. 100, 101 ...a u csv-u koji pravim iz excela imamo razradi tih IDova, npr. ID 100 je opravka racunara, pa imamo 1001 je primio racunar na servis, 1002 je opravka, 1003 je naplata, itd, kontate me, znam :)

Kako da sad napravim parent/child odnos u tabeli/tabelama?

Ko me je skontao, skontao je moj problem. Ma pitajte slobodno sta zelite, i ja sam samog sebe zbunio :=)
 
Odgovor na temu

[es] :: PHP :: Import iz csv fajla u mysql bazu php

[ Pregleda: 1125 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.