|
| hvordan gemme db-data clientside Fra : peter |
Dato : 02-08-04 10:27 |
|
hvordan laver man et script så brugeren kan gemme data fra en tabel på sin
egen maskine (som csv fil).
Kan ikke bruge jo OUTFILE, men hvordan gør man det så lettest?
| |
Ulrik Nielsen (02-08-2004)
| Kommentar Fra : Ulrik Nielsen |
Dato : 02-08-04 11:14 |
|
peter wrote:
> hvordan laver man et script så brugeren kan gemme data fra en tabel på sin
> egen maskine (som csv fil).
> Kan ikke bruge jo OUTFILE, men hvordan gør man det så lettest?
laver din egen csv fil som du sender til brugerens browser ved tryk på
"cvs dump" eller lignende.
- husk at sætte den rigtige "header" på dit output.
--
ulrik nielsen
----------------------------------------------------------------------
excuse of the day : The POP server is out of Coke
from bofh : http://www.cs.wisc.edu/~ballard/bofh/
| |
peter (02-08-2004)
| Kommentar Fra : peter |
Dato : 02-08-04 12:08 |
|
>> hvordan laver man et script så brugeren kan gemme data fra en tabel
>> på sin egen maskine (som csv fil).
>> Kan ikke bruge jo OUTFILE, men hvordan gør man det så lettest?
>
> laver din egen csv fil som du sender til brugerens browser ved tryk på
> "cvs dump" eller lignende.
>
> - husk at sætte den rigtige "header" på dit output.
>
kan du forklare lidt mere..? hvordan laver jeg filen..jeg er ikke så
meget inde i chmod hvis det er dét der skal bruges...
| |
Ulrik Nielsen (02-08-2004)
| Kommentar Fra : Ulrik Nielsen |
Dato : 02-08-04 12:15 |
|
peter wrote:
> kan du forklare lidt mere..? hvordan laver jeg filen..jeg er ikke så
> meget inde i chmod hvis det er dét der skal bruges...
du behøver ikke danne en egentlig fil, du skal bare hive dataene ud af
databasen i kommaseperaseret format ex:
"","",""....
gem dataene i et array, en linie per entry
$data[] = "","",""....;
$data[] = "","",""....;
$data[] = "","",""....;
send header:
header("...");
send data:
exit (implode("\n", $data));
--
ulrik nielsen
----------------------------------------------------------------------
excuse of the day : The POP server is out of Coke
from bofh : http://www.cs.wisc.edu/~ballard/bofh/
| |
peter (02-08-2004)
| Kommentar Fra : peter |
Dato : 02-08-04 12:31 |
|
> du behøver ikke danne en egentlig fil, du skal bare hive dataene ud af
> databasen i kommaseperaseret format ex:
> "","",""....
> gem dataene i et array, en linie per entry
> $data[] = "","",""....;
> $data[] = "","",""....;
> $data[] = "","",""....;
>
> send header:
> header("...");
> send data:
> exit (implode("\n", $data));
>
>
det går stadig lidt for hurtigt. Hvis brugeren skal kunne gemme en fil med
data skal der vel laves en .txt eller lign.!?
| |
Ulrik Nielsen (02-08-2004)
| Kommentar Fra : Ulrik Nielsen |
Dato : 02-08-04 12:46 |
|
peter wrote:
> det går stadig lidt for hurtigt. Hvis brugeren skal kunne gemme en fil med
> data skal der vel laves en .txt eller lign.!?
nej det er det der er finten. du behøver ikke danne en fil på serveren.
man "snyder" browseren til at tro at det er en txt/csv/... fil den skal
til at downloade ved at ændre headerinformationerne der sendes til
browseren.
se evt: http://dk2.php.net/header
prøv: (utestet)
<?php
$data[] = '"1","bla"';
$data[] = '"2","bla"';
$data[] = '"3","bla"';
$data[] = '"4","bla"';
header('Content-type: text/csv');
header('Content-Disposition: attachment; filename="download.csv"');
exit (implode("\n", $data));
?>
--
ulrik nielsen
----------------------------------------------------------------------
excuse of the day : The POP server is out of Coke
from bofh : http://www.cs.wisc.edu/~ballard/bofh/
| |
peter (02-08-2004)
| Kommentar Fra : peter |
Dato : 02-08-04 12:55 |
|
Ulrik Nielsen <un.spam@tiscali.dk> wrote in
news:410e2975$0$294$edfadb0f@dread16.news.tele.dk:
> peter wrote:
>> det går stadig lidt for hurtigt. Hvis brugeren skal kunne gemme en
>> fil med data skal der vel laves en .txt eller lign.!?
>
> nej det er det der er finten. du behøver ikke danne en fil på
> serveren.
>
> man "snyder" browseren til at tro at det er en txt/csv/... fil den
> skal til at downloade ved at ændre headerinformationerne der sendes
> til browseren.
> se evt: http://dk2.php.net/header
>
> prøv: (utestet)
>
> <?php
> $data[] = '"1","bla"';
> $data[] = '"2","bla"';
> $data[] = '"3","bla"';
> $data[] = '"4","bla"';
>
> header('Content-type: text/csv');
> header('Content-Disposition: attachment; filename="download.csv"');
> exit (implode("\n", $data));
> ?>
>
supercool !!!! det virker...tusind tak!
| |
|
|