/ Forside/ Teknologi / Udvikling / PHP / Spørgsmål
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
tidstyring / event trigger med mysql ?
Fra : henrik2008
Vist : 1027 gange
100 point
Dato : 12-01-12 11:15

Hej, jeg er lige blevet færdig med mit eget CMS som jeg selv
har lavet i PHP, MYSQL og javascript osv, som næsten er en mini Joomla, bare med bedre grafik (syntes jeg selv), en skrabet Joomla!.

Nu har jeg følgende spørgsmål, herunder.


Jeg kunne godt tænke mig at tidsstyre artklerne (det kalder jeg tekst dokumenterne som er gemt i mysql databasen).
jeg har prøvet at følge nogle tutorials og andet med funktione now(), timestamp og mysql queries som select now < tid , agtig og
php egen tids funktion for at konvetere til dage og dato sov fra unix epox timestamp, eller hav nu det hedder (det er længe siden at jeg har rodet med tidsdelen, så jeg skal lige huske det gien, jeg opgav i sin tid med tidstyring, fordi jeg ikke kunne få det til at fungere. (jeg plejer ikke at have nogle problemer med programmering generalt, kun tidsstyring som jeg syntes er et helvede at programmere, åbenbart!).
Nu har jeg kigget på internettet med tidstyring og event trigger med funktionen now(), der er flere måder at gøre dette på, herunder.

cronjob, som cliche ikke understøtter.

mysql helt nye facilitet / funktion "event scheduler" som kun
understøttes i mysql version 5.1.6 vistnok.

cliche har kun mysql 5.0.64, så den nye event scheduler funktionen kanjeg ikke bruge.

jeg har tænk at lave det sådan at hver artikel der bliver gemt i databasen, også kan vises på hjemmesiden , efter en bestemt dato, når dato er udløbet bliver teksten på hjemmesiden fjernet, men hvodan i al verden gør man det, det burde vøre nemt ?.

jeg har brugt tinymce som tekst editor som er en del af mit cms.

mysql version 5 og op, skulle kunne være istand til at trigge
event efter tidstyring med now() og meget mere, vistnok ? (ja, så må mysql databasen have en slags realtime event / ur der kan trigge forskellige events ?).
hvis ikke, tjaa så kan jeg overhovedet tidsstyre noget som helst, det kan da ikke passe ?. (håber det!).

 
 
Kommentar
Fra : Hammerhead


Dato : 12-01-12 11:39

Hej.

Er ikke den store programmør, men har tænkt lidt over din problematik.

Når du uploader filen har du upload dato og så kan du lave en løkke som tæller x dage frem og når du så når frem til dag X skal indlægget ikke længere vises?

Kommentar
Fra : henrik2008


Dato : 12-01-12 12:24

joo, det har jeg prøvet, med at konvertere med now()=$tid og
if ($tid>now()-curdate)

{

$tid++;

}

måske ikke lige sådan men noget lign også med et statement med mysql queris som select tid >now()
, kan ikke huske det, em kan hurtig finde frem til tutorials, men denne måde er overordentlig kompleks og virer ikke rigtig, altså en blanding af php mysql og funktionen now(), nej jeg vil have mysql til at trigge events id fra et if <> else agtig trigger events, det er bare lige hvordan man gør det ?.


Accepteret svar
Fra : Hammerhead

Modtaget 100 point
Dato : 12-01-12 14:49

Prøv evt. at kigge på http://php.net/manual/en/function.[B]strtotime[/B].php

Hvis du har en start og slutdato i databasen, så hent kun indlæg hvor slutdatoen ikke er lig med i dag.

Indsæt en IF sætning i din while...

If slutdato er mindre end strtotime vis indlæg


Håber det giver mening

Kommentar
Fra : henrik2008


Dato : 14-01-12 17:32

æhh, jeg glemte faktisk at jeg har oprette et indkæg med næsten samme emne (email aktivering iden fro 48 timer i mysql databas), der har jeg lagt nogle sikkert brugbar eks, som næsteb virkede, undatgen at koden ikke kunne søge efter flere artikler med og derefter at udføre evt, deaktivering af artikel (det er meget nemt, man sætter eb boolean værdi for artikel i et felt for hver aritkel med
værdien som 1= aktiv og 0= ikke aktiv).



Kommentar
Fra : henrik2008


Dato : 14-01-12 17:36

hvorfor strtotime, akn man ikke bare udføre en if booelan og betingeler med < > operatør, uden at blande php egen time funktion med, altså kun lade mysql tjekke dato er gammel og for derefter at dea aktivere artikel (der er lavet aktivering deaktivering i mit cms, det virker!).

hva med denne her kan den bruges, SELECT * FROM artikler WHERE dato BETWEEN now() AND date_add(now()+30) ?. (har ikke skrevet denne kode!).


Godkendelse af svar
Fra : henrik2008


Dato : 27-02-12 11:11

Tak for svaret Hammerhead.

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407814
Brugere : 218875

Månedens bedste
Årets bedste
Sidste års bedste