/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
betal og download - hvordan
Fra : Metax


Dato : 21-01-05 13:41

Hej

Jeg vil tilbyde salg af filer på nettet.
På siden vil et antal filer blive tilbudt. Disse kan købes, og betales via
et betalingssystem.
Når man så har købt og betalt, skal man umiddelbart kunne downloade
filen/filerne.

Hvooden gør jeg lige det?

Hilsen MetaX




 
 
Kasper Johansen (21-01-2005)
Kommentar
Fra : Kasper Johansen


Dato : 21-01-05 13:59

Metax wrote:
> Hvooden gør jeg lige det?

Dit spørgsmål er utroligt bredt, prøv at beskrive det bedre.

Mvh
Kasper Johansen

Metax (21-01-2005)
Kommentar
Fra : Metax


Dato : 21-01-05 14:56


> Dit spørgsmål er utroligt bredt, prøv at beskrive det bedre.
>
Ok - det handler i princippet om en butik:

Du kommer ind og ser et udvalg af filer.

Du vælger en eller flere du er interesseret i.

Disse kommes i en "kurv".

Du ordner betaling via et betalingskort - ex. Visa.

Umiddelbart efter du har betalt, skal du have muligheden for at downloade
købte filer.


Jeg er med indtil betalingen - men how to at lave en side med de købte og
betalte filer for download?

Tak for interessen

MetaX



Ulrik Nielsen (21-01-2005)
Kommentar
Fra : Ulrik Nielsen


Dato : 21-01-05 15:51

Metax wrote:
>>Dit spørgsmål er utroligt bredt, prøv at beskrive det bedre.
>>
> Jeg er med indtil betalingen - men how to at lave en side med de købte og
> betalte filer for download?

function slet_tmp_fil($filnavn) {
if is_file($filnavn)
unlink($filnavn);
}

if (betaling_foretaget()) {

$tmp_fil_navn = pak_midlertidig_fil();
register_shutdown_function('slet_tmp_fil', $tmp_fil_navn)
passthru($tmp_fil_navn);

}

--
ulrik nielsen |
-----------------+---------------------------------------------------
quote or the day | Processes running slowly due to weak power supply
from bofh | http://www.cs.wisc.edu/~ballard/bofh/

Benny Nissen (21-01-2005)
Kommentar
Fra : Benny Nissen


Dato : 21-01-05 16:18

After serious thinking Ulrik Nielsen wrote :
> Metax wrote:
>>>Dit spørgsmål er utroligt bredt, prøv at beskrive det bedre.
>>>
>> Jeg er med indtil betalingen - men how to at lave en side med de købte og
>> betalte filer for download?
>
> function slet_tmp_fil($filnavn) {
> if is_file($filnavn)
> unlink($filnavn);
> }
>
> if (betaling_foretaget()) {
>
> $tmp_fil_navn = pak_midlertidig_fil();
> register_shutdown_function('slet_tmp_fil', $tmp_fil_navn)
> passthru($tmp_fil_navn);
>
> }

Hvad så, hvis download af en eller anden grund bliver afbrudt ?
Så kan kunden ikke få fat i filen igen, uden af betale igen.

Hvad med at generere et tilfældigt tal (gerne langt, måske med
bogstaver)
Smid den i en database + vis et link til kunden, hvor han kan hente
filen.
Send samme link til kundens email.

Efter f.eks. 2 dage fjernes variablen i databasen.

download.php skal så selvfølgelig checke om den givne værdi findes i
databasen, og derefter sende filen afsted, hvis alt er ok.

et link kunne se ud som
domain.tld/download.php?user=45fhd552h48s3h1kl89df87f2c689clskhgf75jdawq0nv

Hvis det drejer sig om mindre filer kunne de vel også pakkes (som
f.eks. .rar) og sendes pr. email til kunden.
Så er det også kun kunder med en gyldig emailadresse, der kan få dem.

--
Benny


Kasper Johansen (21-01-2005)
Kommentar
Fra : Kasper Johansen


Dato : 21-01-05 18:51

Metax wrote:
> Jeg er med indtil betalingen - men how to at lave en side med de købte og
> betalte filer for download?

Mit forslag til løsning af problemet er at du, selvfølgelig, først
opretter en brugerdatabase, derved er det jo lettere at holde styr på
brugerne.

Når man så har "købt" en fil indsættes følgende i din database (nu
skriver jeg et eksempel i MySQL, fordi jeg nu arbejder med det):

INSERT INTO koebte_filer (usrid, filid) VALUES ('$brugerid', '$filid')


Du kan så oprette endnu en PHP-fil til når brugeren skal downloade til.
Hvis du er begynder kan dette godt være lidt svært at forstå.


"henfil.php"

Et eksempel på når brugeren skal have filen kunne URL'en se således ud:

http://hallo.dk/henfil.php?filid=512


Filen hedder umiddelbart PHP, men du kan ved hjælp af headers sende
information der gør at brugerens browser vil tro at den har et helt
andet filnavn, og helt anden filtype end ".php".

Du kan læse mere om hvordan header virker her:

http://dk.php.net/manual/en/function.header.php


Du udformer altså derfor din "henfil.php" således:

<?
$f_check = mysql_query("SELECT * FROM koebte_filer WHERE usrid =
'$brugerid' && filid = '$filid'");
$d_check = mysql_fetch_array($f_check);

if ($d_check){
$f_fildata = mysql_query("SELECT * FROM filer WHERE nr = '$filid'");
$d_fildata = mysql_fetch_array($f_fildata);

header("Content-Disposition: attachment; filename=\"downloaded.pdf\"");
header("Content-type: application/force-download");

readfile($d_fildata[filposition]);
}else{
echo "Hov, hov, lille ven. Den har du vidst ikke købt, har du?";
}
?>

Indholdet er filen er selvfølgelig ikke testet, men burde give en ide om
hvordan jeg mener at du lettest kommer uden om problemet.


--
Mvh Kasper Johansen aka knj

Metax (23-01-2005)
Kommentar
Fra : Metax


Dato : 23-01-05 23:23


hej svarere

Tak for svarerne - er blevet inspireret.

hilsen MetaX



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste