Prikazi cijelu temu 03.04.2018 12:13
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Lokacija:zagreb


Predmet:upload file, stavi u array, ispisi u tabelu sa č,ž,Å¡ slovima
index.html

PreuzmiIzvorni kôd (HTML):
  1. <!DOCTYPE html>
  2. <html lang="en">
  3.   <head>
  4.     <meta charset="utf-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <title>PHP File Uploader</title>
  7.  
  8.     <!-- Bootstrap core CSS -->
  9.     <link href="boostrap/css/bootstrap.min.css" rel="stylesheet">
  10.    
  11.   </head>
  12.  
  13.   <body>
  14.  
  15.     <!-- Static navbar -->
  16.     <div class="navbar navbar-default navbar-static-top">
  17.       <div class="container">
  18.         <div class="navbar-header">
  19.           <a class="navbar-brand" href="index.php">PHP File Uploader</a>
  20.         </div>
  21.       </div>
  22.     </div>
  23.  
  24.  
  25.     <div class="container">
  26.  
  27.           <div class="row">
  28.             <div class="col-lg-12">
  29.                <form class="well" action="upload.php" accept-charset="utf-8" method="post" enctype="multipart/form-data">
  30.                   <div class="form-group">
  31.                     <label for="file">Izaberi datoteku</label>
  32.                     <input type="file" name="uploadFile" id="uploadFile" value="" />
  33.                     <p class="help-block">Prihvaca se samo csv datozeka, max. velicine 1 MB.</p>
  34.                   </div>
  35.                   <input type="submit" class="btn btn-lg btn-primary" name="submitBtn" id="submitBtn" value="Upload" />
  36.                 </form>
  37.             </div>
  38.           </div>
  39.     </div> <!-- /container -->
  40.  
  41.   </body>
  42. </html>

upload.php

PreuzmiIzvorni kôd (PHP):
  1. <?php
  2.  
  3. //provjera greske
  4. ini_set('display_errors', 1);
  5.  
  6. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  7.         $name     = $_FILES['uploadFile']['name'];
  8.         $tmpName  = $_FILES['uploadFile']['tmp_name'];
  9.         $error    = $_FILES['uploadFile']['error'];
  10.         $size     = $_FILES['uploadFile']['size'];
  11.         $ext      = strtolower(pathinfo($name, PATHINFO_EXTENSION));
  12.  
  13.     echo "<br>";
  14.         echo "ime: ".$name."<br>";
  15.         echo "tmpName: ".$tmpName."<br>";
  16.         echo "greska: ".$error."<br>";
  17.         echo "velicina: ".$size."<br>";
  18.         echo "nastavak: ".$ext."<br>";
  19.    
  20.     switch ($error) {
  21.                 case UPLOAD_ERR_OK:
  22.                         $valid = true;
  23.                         //validate file extensions
  24.                         if ( !in_array($ext, array('csv')) ) {
  25.                                 $valid = false;
  26.                                 $response = 'Nedozvoljen tip datoteke.';
  27.                                 echo $response;
  28.                                 exit;
  29.                                
  30.                         }
  31.                         //validate file size
  32.                         if ( $size/1024/1024 > 2 ) {
  33.                                 $valid = false;
  34.                                 $response = 'Velicina datoteke premasuje dozvoljenu velicinu.';
  35.                         }
  36.                         //upload file
  37.                         if ($valid) {
  38.                         //      $targetPath =  dirname( __FILE__ ) . DIRECTORY_SEPARATOR. 'uploads' . DIRECTORY_SEPARATOR. $name;
  39.                         //      move_uploaded_file($tmpName,$targetPath);
  40.                         //      header( 'Location: index.php' ) ;
  41.                         //      exit;
  42.                                 $response = 'Datoteka ispravna.';
  43.                         }
  44.                         break;
  45.                 case UPLOAD_ERR_INI_SIZE:
  46.                         $response = 'The uploaded file exceeds the upload_max_filesize directive in php.ini.';
  47.                         break;
  48.                 case UPLOAD_ERR_PARTIAL:
  49.                         $response = 'The uploaded file was only partially uploaded.';
  50.                         break;
  51.                 case UPLOAD_ERR_NO_FILE:
  52.                         $response = 'No file was uploaded.';
  53.                         break;
  54.                 case UPLOAD_ERR_NO_TMP_DIR:
  55.                         $response = 'Missing a temporary folder. Introduced in PHP 4.3.10 and PHP 5.0.3.';
  56.                         break;
  57.                 case UPLOAD_ERR_CANT_WRITE:
  58.                         $response = 'Failed to write file to disk. Introduced in PHP 5.1.0.';
  59.                         break;
  60.                 default:
  61.                         $response = 'Unknown error';
  62.                 break;
  63.         }
  64.  
  65.         echo $response;
  66. }
  67.  
  68. //
  69. ,ž,š slova
  70. $row = 1;
  71. if (fopen($_FILES['uploadFile']['tmp_name'], "r")) {
  72.        
  73.         $handle=fopen($_FILES['uploadFile']['tmp_name'], "r");
  74.        
  75.         //pokazi vrstu utf-a
  76.         $encoding = mb_detect_encoding($tmpName , 'UTF-8, UTF-7, ASCII, EUC-JP,SJIS, eucJP-win, SJIS-win, JIS, ISO-2022-JP');
  77.         echo "<br>"."Vrsta utf-a:".$encoding;
  78.        
  79.         $output = '<table border="1">';
  80.     while( ($data = fgetcsv( $handle )) !== false ){
  81.            
  82.         $output .= '<tr>';
  83.         foreach( $data as $value )
  84.         {
  85.             $output .= sprintf( '<td>%s</td>', $value );
  86.         }
  87.         $output .= '</tr>';
  88.     }
  89.     fclose( $handle );
  90.     $output .= '</table>';
  91. }
  92. echo $output;
  93. ?>

ucitam csv datoteku ali mi u tabli ne pokazuje slova č,ž,Å¡

Dali ste imali vi taj problem i kako ste ga rijesili?

Prilozi:
proba.rar
Preuzimanja:363
Velicina datoteke:160 Bajt


zivot je moja domovina.
Ovaj post je ureden 2 puta. Posljednja izmjena 04.04.2018 13:53 od strane Avko.