Predmet:Re: import txt file u mysql bazu - rad sa datotekama
  
  
  cijeli html,php kod je prikvacen a pogledat cemo samo dio koda koji radi uvoz:
u index.php imamo tipku 
<a href="import.php" class="btn btn-success pull-right">UVEZI DATOTEKU</a>
pritiskom na tipku izvrsi se import.php kod u kojem se 
izvrse neke radnje bitne za daljni rad koda i neke informativne radnje koje nam pokazu na ekranu neke vrijednosti:
PreuzmiIzvorni kôd (Text):- // Ukljuci konfiguracijsku datoteku 
- require_once "config.php"; 
-   
- // Definirajte varijable i inicijalizirajte ih s praznim vrijednostima 
- $ime = $telefon = $adresa = $datum_rodenja = $koef_obrazovanja = $kategorija_r_mjesta = $osobni_dohodak = $od_dodaci = $sati_tjedno = ""; 
- $ime_err = $telefon_err = $adresa_err = $datum_rodenja_err = $koef_obrazovanja_err = $kategorija_r_mjesta_err = $osobni_dohodak_err = $od_dodaci_err = $sati_tjedno_err = ""; 
-   
- // Obrada podataka obrasca prilikom predaje obrasca 
- if($_SERVER["REQUEST_METHOD"] == "POST"){ 
-          
-         if(isset($_FILES['file'])) 
-         { 
-                 // detalji o prenesenoj datoteci 
-                 $fileTmpPath = $_FILES['file']['tmp_name']; 
-                 $fileName = $_FILES['file']['name']; 
-                 $fileSize = $_FILES['file']['size']; 
-                 $fileType = $_FILES['file']['type']; 
-                  
-                  
-                 echo "fileTmpPath: ".$fileTmpPath."</br>"; 
-                 echo "fileName: ".$fileName."</br>"; 
-                 echo "sileSize: ".$fileSize."</br>"; 
-                 echo "fileType: ".$fileType."</br>"; 
-                  
-         } 
 
ako velicina ucitanog fajla nije nula
PreuzmiIzvorni kôd (Text):- $filename=$_FILES["file"]["tmp_name"]; 
- echo $filename."</br>"; 
-                  
- if($_FILES["file"]["size"] > 0) 
- { 
-   echo $filename."</br>"; 
 
ucitamo fajli i podatke ubacimo u bazu
PreuzmiIzvorni kôd (Text):- $file = $_FILES["file"]["tmp_name"]; 
- $file_open = fopen($file,"r"); 
- while(($csv = fgetcsv($file_open, 1000, ",")) !== false) 
- { 
- $id=""; 
- if (isset($csv[0])){$id = mysqli_real_escape_string($con, $csv[0]);} 
- $ime=""; 
- if (isset($csv[1])){$ime = mysqli_real_escape_string($con, $csv[1]);} 
- $telefon=""; 
- if (isset($csv[2])){$telefon = mysqli_real_escape_string($con, $csv[2]);} 
- $adresa=""; 
- if (isset($csv[3])){$adresa = mysqli_real_escape_string($con, $csv[3]);} 
- $datum_rodenja=""; 
- if (isset($csv[4])){$datum_rodenja = mysqli_real_escape_string($con, $csv[4]);} 
- $koef_obrazovanja=""; 
- if (isset($csv[5])){$koef_obrazovanja = mysqli_real_escape_string($con, $csv[5]);} 
- $kategorija_r_mjesta=""; 
- if (isset($csv[6])){$kategorija_r_mjesta = mysqli_real_escape_string($con, $csv[6]);} 
- $osobni_dohodak=""; 
- if (isset($csv[7])){$osobni_dohodak = mysqli_real_escape_string($con, $csv[7]);} 
- $od_dodaci=""; 
- if (isset($csv[8])){$od_dodaci = mysqli_real_escape_string($con, $csv[8]);} 
- $sati_tjedno=""; 
- if (isset($csv[9])){$sati_tjedno = mysqli_real_escape_string($con, $csv[9]);} 
-                                  
- $sql="INSERT INTO zaposlenici(id, ime, telefon, adresa, datum_rodenja, koef_obrazovanja,  
-                                              kategorija_r_mjesta, osobni_dohodak, od_dodaci, sati_tjedno) 
-         VALUES('".$id."', '".$ime."', '".$telefon."', '".$adresa."', '".$datum_rodenja."', '".$koef_obrazovanja."','  
-                     ".$kategorija_r_mjesta."', '".$osobni_dohodak."', '".$od_dodaci."', '".$sati_tjedno."') 
- ON DUPLICATE KEY UPDATE 
- id='".$id."', 
- ime='".$ime."', 
- telefon='".$telefon."',  
- adresa='".$adresa."',  
- datum_rodenja='".$datum_rodenja."',  
- koef_obrazovanja='".$koef_obrazovanja."',  
- kategorija_r_mjesta='".$kategorija_r_mjesta."',  
- osobni_dohodak='".$osobni_dohodak."', 
- od_dodaci='".$od_dodaci."',  
- sati_tjedno='".$sati_tjedno."' 
- "; 
-                                  
- mysqli_query($con,$sql); 
-                                  
- echo $csv[0]." ".$csv[1]." ".$csv[2]." ".$csv[3]." ".$csv[4]." ".$csv[5]." ".$csv[6]." ".$csv[7]." ".$csv[8]."  
-         ".$csv[9]."</br>"; 
- echo $id.", ".$ime.", ".$telefon.", ".$adresa.", ".$datum_rodenja.", ".$koef_obrazovanja.",  
-         ".$kategorija_r_mjesta.", ".$osobni_dohodak.",".$od_dodaci.",".$sati_tjedno; 
- if (!empty($sql)) { echo " - upit izvrsen"."</br>"; } 
- } 
 
Upotrijebili smo sql naredbu:
INSERT INTO t1 (a,b,c) VALUES (1,2,3)  ON DUPLICATE KEY UPDATE c=c+1;
ona ce zamijeniti postojece podatke sa novima a brza je od  REPLACE INTO t1 (a,b,c) VALUES (1,2,3);
koja ide od reda do reda i sve mijenja    
  
  
Prilozi:
  
 probaImport.rar
Preuzimanja:167
 
probaImport.rar
Preuzimanja:167
Velicina datoteke:12.41 KB
 
  
        
            zivot je moja domovina.
        
      	Ovaj post je ureden      	
4
      	puta. Posljednja izmjena 12.08.2020 12:27 od strane Avko.    		
 
 
   		