Avatar billede anan Nybegynder
18. april 2007 - 21:22 Der er 21 kommentarer

vip udløbelse

hej igen :D

er der nogen af jer der aner hvordan man laver et script der udløber på en bestemt dato? og så at det ændre i databasen? :s

ligesom arto, så har de VIP udløbelse. ja, jeg ved at dem bag arto er prof. men stadig? :D

kan i hjælpe?
Avatar billede mcardle Nybegynder
18. april 2007 - 22:28 #1
Du kan indsætte en dato i din database og tjekke med den hver gang man logger ind.

Altså:

//start session
session_start();

//Sæt udløbsdato
$til_db = time();

// En masse tal
$fra_db = "131310364";

if($fra_db >= time()){
  // Sæt en session eller cookie
  $_SESSION["payment"] = "yes";
}

Og så bare skrive:
if($_SESSION["payment"] == "yes"){
  echo 'Speciel Menu';
}

Noget á la det her... ;o)

//mcardle
Avatar billede anan Nybegynder
19. april 2007 - 13:27 #2
hm ..

//start session
session_start();

//Sæt udløbsdato
$til_db = time();

// En masse tal
$fra_db = "131310364";

if($fra_db >= time()){
  // Sæt en session eller cookie
  $_SESSION["payment"] = "yes";
}

Og så bare skrive:
if($_SESSION["payment"] == "yes"){
  echo 'Speciel Menu';
}


der skal stå f.eks: din vip udløber d. 2/5 2007 et eks.
Avatar billede dandyman Nybegynder
19. april 2007 - 21:00 #3
$udloebitime = 131310364;
echo date("j M Y",$udloebitime);
Avatar billede dandyman Nybegynder
19. april 2007 - 21:00 #4
echo "din vip udløber ".date("j M Y",$udloebitime);
Avatar billede mcardle Nybegynder
20. april 2007 - 09:29 #5
Den her:

//Sæt udløbsdato
$til_db = time();

Skal være sådan her:

//Sæt udløbsdato
$til_db = time() + (60*60*60*24*$antal_dage);
$antal_dage = 30;
Avatar billede anan Nybegynder
25. april 2007 - 13:40 #6
hm, det ser ud til at virke, men skal jeg så ikke have en update der skriver at level= 'vip' skal sættes til level= 'alm. bruger' efter 30 dages vip?`;s
Avatar billede mcardle Nybegynder
25. april 2007 - 14:49 #7
Nej, det skulle gerne virke sådan, at den selv udløber. Det eneste der er, er at man kan ikke have flere levels. Altså du kan ikke have alm, vip og admin.

Lige nu er det lavet sådan, at når tiden udløber, så er man ikke længere vip, men hvis den bliver sat igen, så har man det antal dage du sætter den til. Du skal bare lige være opmærksom på, at hvis en bruger har 3 dage tilbage og køber 30 dage, så har han / hun ikke 33 dage bagefter.

Hvis man skal kunne det, skal du hive resten ud af db'en og plusse med den nye og sætte det ind igen.

Skriv hvis du har brug for hjælp til at lave scriptet.
Avatar billede anan Nybegynder
25. april 2007 - 16:47 #8
hm .. jeg har lavet det sådan som jeg tror det skal laves.

<?
//start session
session_start();

//Sæt udløbsdato
$til_db = time() + (60*60*60*24*$antal_dage);
$antal_dage = 30;

// En masse tal
$fra_db = "131310364";

if($fra_db >= time()){
  // Sæt en session eller cookie
  $_SESSION["level"] = "vip";
}
if($_SESSION["level"] == "vip"){
  echo 'du har 30 dages vip';
}
?>


men jeg tænkte på, kan jeg ikke få en tekst der viser det sådan her:
din vip udløber d. 25 maj 2007 <-- altså en måned fra idag af.
Avatar billede mcardle Nybegynder
25. april 2007 - 17:09 #9
Så skal du lige lave lidt om.

//Sæt udløbsdato
$til_db = time() + (60*60*60*24*$antal_dage);
$antal_dage = 30;

Skal erstattes med:
//Sæt udløbsdato
$antal_dage = 30;
$days = date("d")+$antal_dage;

$til_db = mktime(0,0,0,date("n"),$days,date("Y"),-1);

Og når du skal tage det ud fra databasen:
echo date("d M Y",$fra_db);
Avatar billede anan Nybegynder
25. april 2007 - 17:55 #10
Og når du skal tage det ud fra databasen:
echo date("d M Y",$fra_db);

jamen .. skal jeg hente det fra databasen? ;s
Avatar billede anan Nybegynder
25. april 2007 - 17:57 #11
01 Jan 1970 det viser den nu og min kode ser således ud:


<?
//start session
session_start();

//Sæt udløbsdato
$antal_dage = 30;
$days = date("d")+$antal_dage;

$til_db = mktime(0,0,0,date("n"),$days,date("Y"),-1);

echo date("d M Y",$fra_db);

// En masse tal
$fra_db = "131310364";

if($fra_db >= time()){
  // Sæt en session eller cookie
  $_SESSION["level"] = "vip";
}
if($_SESSION["level"] == "vip"){
  echo '';
}
?>
Avatar billede mcardle Nybegynder
25. april 2007 - 18:04 #12
$fra_db skal jo være det du tager ud af din database.
Avatar billede anan Nybegynder
25. april 2007 - 18:05 #13
// En masse tal
$fra_db = "131310364";


hvad er det jeg skal tage ud fra databasen? ;s
Avatar billede mcardle Nybegynder
25. april 2007 - 18:11 #14
Du har en data, hvor du gemmer:

//Sæt udløbsdato
$antal_dage = 30;
$days = date("d")+$antal_dage;

$til_db = mktime(0,0,0,date("n"),$days,date("Y"),-1);


Når du har gjort det, så tager du det ud, når man logger ind. Det bliver så til et array, f.eks. $fra_db["tid"] og den tager du og putter ind i tagget date().

Så kommer det til at se sådan her ud:

echo date("d M Y", $fra_db["tid"]);
Avatar billede anan Nybegynder
25. april 2007 - 18:14 #15
altså jeg har et felt der hedder level. det er det der skal skelne mellem vip og alm. bruger?

kan du forklarer det lidt nærmere? :)
Avatar billede mcardle Nybegynder
25. april 2007 - 18:31 #16
I din db skal du faktisk kun have 3 felter.

Det ene skal hedde:
id og være INT og auto increament.

Det andet skal hedde:
bruger og være VARCHAR 100

Det tredje skal hedde:
tid og være INT


Du kan indsætte hvor lang tid der er tilbage af en brugers VIP ved at indsætte den manuelt eller med en form.

Når man så logger ind, så beder du om brugerens navn og så bruger du det til at gå ind og kigge i databasen.

Eks.:
$query = mysql_query("SELECT * FROM vip WHERE bruger='$bruger'") or die(mysql_error());
$array = mysql_fetch_array($query);

if($array["tid"] >= mktime(0,0,0,date("n"),date("m"),date("Y"),-1)){
  $_SESSION["level"] = "vip";
  echo 'Du har vip indtil d.'.date("d M Y",$array["tid"]);
}
else{
  echo 'Du er ikke vip';
}
Avatar billede anan Nybegynder
25. april 2007 - 18:36 #17
kan jeg få en hel kode? :)
Avatar billede mcardle Nybegynder
25. april 2007 - 20:12 #18
Det der var mere eller mindre hel kode. Har du et login-script?, Har du lavet databasen, så den passer med det jeg har sagt? og har du sat noget ind i databasen?
Avatar billede anan Nybegynder
25. april 2007 - 20:15 #19
ja jeg har et login script.
om jeg har sat noget ind i databasen? :s
Avatar billede mcardle Nybegynder
26. april 2007 - 06:44 #20
Har du sat udløbsdatoen ind i din database? Har du en database?
Avatar billede anan Nybegynder
26. april 2007 - 15:32 #21
hvordan skal jeg sætte den ind?
skal jeg lavet et felt der hedder udloebsdato eller hvad? jeg kan ikke følge dig?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester