Avatar billede kristianrnielsen Juniormester
27. april 2017 - 11:38 Der er 5 kommentarer og
2 løsninger

file_exists() i realtime - jQuery?

Kære Eksperter,

Er der mulighed for at lave et script, som i realtime (eller jævnligt opdaterer) tjekker om en fil eksisterer via file_exists() i PHP?

Jeg tænker om det kan gøres via jQuery eller lignende?

Enten hvor selve siden hele tiden tjekker, eller evt. en usynlig iframe som opdaterer hvert femte (eller lignende) sekund, og pusher resultatet tilbage i parent framen?

Al hjælp vil blive værdsat.

Alle de bedste ønsker,
Kristian Nielsen
Avatar billede Slater Ekspert
27. april 2017 - 12:00 #1
Det er et perfekt job for AJAX, f.eks. sådan:

setInterval(function() {
    $.get('fil-der-tjekker.php', function(data) {
        console.log(data);
    });
}, 5000);
Avatar billede kristianrnielsen Juniormester
27. april 2017 - 12:27 #2
Mange tak for det hurtige svar :)

Jeg er total ny i Ajax - er der mulighed for at sende en string med i forespørgslen?

Så jeg eksempelvis kan bruge "fil-der-tjekker.php" flere gange på samme tid, til forskellige filer.

Går ikke ud fra jeg kan bruge
$.get('fil-der-tjekker.php?fil=1', function(data) {

Endnu en gang, mange tak for hjælpen :)
Avatar billede jakobdo Ekspert
27. april 2017 - 12:31 #3
Udbygning af #1

$.get('fil-der-tjekker.php', {filename: "filnavn.ext"}, function(data) {
  console.log(data);
});
Avatar billede kristianrnielsen Juniormester
27. april 2017 - 12:34 #4
Jakob, vil jeg så kunne bruge $_GET["filename"] til at få "filnavn.ext" i fil-der-tjekker.php?
Avatar billede jakobdo Ekspert
27. april 2017 - 13:17 #5
Ja, det burde du kunne. :)
Og ellers, så lav lige en print_r($_GET); og se hvad du får af info
Avatar billede kristianrnielsen Juniormester
27. april 2017 - 13:20 #6
Fedt, mange tak.

Så er sidste spørgsmål bare hvordan jeg får resultatet frem på siden.
<script type="text/javascript">
setInterval(function() {
$.get('fil-der-tjekker.php', {filename: "filnavn.ext"}, function(data) {
  console.log(data);
});
}, 5000);
</script>

og så

<div id="data"></div>

eller hvordan?

Beklager endnu en gang de dumme spørgsmål - er første gang jeg roder med Ajax. Tusind tak for hjælpen :)
Avatar billede kristianrnielsen Juniormester
27. april 2017 - 13:36 #7
Lader til at jeg har fået det til at virke - mange tak for hjælpen! :)
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