| Autor | Zpráva | ||
|---|---|---|---|
| web2000 Profil * |
#1 · Zasláno: 24. 7. 2013, 09:04:51
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 |
#2 · Zasláno: 24. 7. 2013, 09:22:00
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 |
#3 · Zasláno: 24. 7. 2013, 09:24:23
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 * |
#4 · Zasláno: 24. 7. 2013, 09:43:49
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() |
||
|
Časová prodleva: 13 let
|
|||
0