Pagina 1 din 1
Sterge din baza de date dupa o anumita data
Scris: Lun Mai 28, 2012
de evident
Salut,
cum as putea sa fac un script in care sa mi se stearga din baza de date o anumita inregistrare dupa o data anume.
De exemplu, am o baza da date cu anunturi si o coloana cu numele "expira" care se introduce autoamat dupa ce userul introduce anuntul pe site. Sa se stearga anunturile dupa data aia.
Sterge din baza de date dupa o anumita data
Scris: Lun Mai 28, 2012
de MarPlo
Salut
Depinde de tipul coloanei cu acea data, daca e de tip DATETIME, INT sau VARCHAR (cu inregistrare numar Timestamp).
In principiu se foloseste formula SQL:
Iar la conditie poti avea:
Sau:
Cod: Selectaţi tot
WHERE UNIX_TIMESTAMP(`expira`) < CURRENT_TIMESTAMP()
Re: Sterge din baza de date dupa o anumita data
Scris: Mar Mai 29, 2012
de evident
asa m-am gandit si eu si merge.dar eu vreau sa includ scriptul acesta undeva in site si sa ruleze ori de cate ori este accesata acea pagina...de exemplu in header.iar daca cineva are setata data gresit in calculator imi sterge din baza de date dupa data pe care o are setata acel vizitator.
sper ca m-ati inteles
Multumesc.
Sterge din baza de date dupa o anumita data
Scris: Mar Mai 29, 2012
de MarPlo
Scriptul PHP lucreaza cu data de pe server (de exemplu date() sau time() ), iar NOW() e data curenta in serverul MySQL, nu are treaba cu data de pe calculatorul utilizatorului.
Depinde cum ai codul pt. adaugare, ce data de expirare adauga. In plus, pot fi diferente de data intre serverul PHP si MySQL. In cazul asta trebuie folosita aceeasi functie de timp si la Insert si la Delete, ori cu timpul din PHP, ori cu NOW() (sau CURRENT_TIMESTAMP() ) care e in MySQL.
Sterge din baza de date dupa o anumita data
Scris: Mie Mai 30, 2012
de evident
nu stiam chestia asta.credeam ca e luata de la fiecare.daca e cum ai zis u sus ma descurc sa fac un script care sa stearga dupa o anumita data.
data expirarii este inserata automat de userul care adauga un anunt cam asa:
DATE_ADD(NOW(), INTERVAL $zile DAY)
iar $zile = $_POST['zile']; care vine din formularul de adaugare