Autor Zpráva
web2000
Profil *
Ahoj,

Chtěl bych nahrát do tabulky data z csv souboru, nahrání na server a dotaz pro insert mám sepsaný, ale nevím jak skriptu říct, aby ze souboru vždy vytáhl jeden řádek a projel ho cyklem k uložení do tabulky.


<?
if ($_REQUEST["odeslano"]==1):

if ($_FILES['data']['size']>4000) die ("Soubor je příliš velký ;-(");
if (!is_file($_FILES['data']['tmp_name'])) die ("Žádný soubor jste neuploadovali !!!");
  
  if (move_uploaded_file($_FILES['data']['tmp_name'], "./soupis.csv"))
  {
   $soubor=$_SERVER["DOCUMENT_ROOT"]."/soupis.csv";  
      
while ()
{
$sql = "INSERT INTO soupis VALUES (0, $var, $cena)";
$vystup = mysql_query ($sql); 
}    
    if ($vystup)
    echo "<div class=\"hlaska\"><strong>Vybrané záznamy byli uloženy do tabulky.</strong></div>";
    if (!$vystup)
    {
    echo "<div class=\"hlaska\"><strong>Chyba! Vybrané záznamy se nepodařilo uložit do tabulky.</strong></div>";
    exit;
    }
   
  };
else:
?>
Taps
Profil
web2000:
vytáhl jeden řádek
musíš specifikovat způsob jakým se vybere daný řádek. Má to být první či poslední řádek ?
Alphard
Profil
Nechce všechny a projít je postupně cyklem?
Přesně na načítání souboru po řádcích je funkce fgetcsv(). Pokud chcete nějaký specifický, bude se to dělat podobně, jen se použije pouze ten, co chcete.
web2000
Profil *
Alphard:
soupis.csv
1254;256
1253;550

Do tabulky soupis se mají postupně uložit všechny řádky ze souboru. Ok vyzkouším tu funkci fgetcsv()

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: