0

I'm new to jquery and php both. I have an html page and need to use some functions in a php file via jquery, and then print the results in html.

What I'm trying to do is counting the number of files in 3 different directories, and then print their results in 3 different divs. When I write only one function in the php file, and call it via load in jquery, it works fine. But I don't know how to use this method for 3 different functions in the same php file. Could you please help me?

HTML:

<div class="result1"></div>
<div class="result2"></div>
<div class="result3"></div>
<script>window.onload = stats()</script>

JS:

function stats() {
$('.result1').load("counter.php"); //I don't know what to add here to get the result of only the function a1 in counter.php
$('.result2').load("counter.php"); //and for a2
$('.result3').load("counter.php"); //and for a3
}

PHP:

<?php

function a1() {
$i = 0;
$dir = '../folder1/';
if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
echo "$i";
}

function a2() {
$i = 0;
$dir = '../folder2/';
if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
echo "$i";
}

function a3() {
$i = 0;
$dir = '../folder3/';
if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
echo "$i";
}

?>

1 Answer 1

1

Add a URL parameter that indicates which function to call. Then check that in the PHP.

JS:

function stats() {
    $('.result1').load("counter.php?action=a1");
    $('.result2').load("counter.php?action=a2");
    $('.result3').load("counter.php?action=a3");
}

PHP:

<?php

switch ($_GET['action']) {
case 'a1':
    a1();
    break;
case 'a2':
    a2();
    break;
case 'a3':
    a3();
    break;
}

function a1() {
    $i = 0;
    $dir = '../folder1/';
    if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
    echo "$i";
}

function a2() {
    $i = 0;
    $dir = '../folder2/';
    if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
    echo "$i";
}

function a3() {
    $i = 0;
    $dir = '../folder3/';
    if ($handle = opendir($dir)) {while (($file = readdir($handle)) !== false){if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) $i++;}}
    echo "$i";
}

?>
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.