1

I am making a web app that has typical javascript structure below. I must hide at least a function or some formulas from the public code because someone can save the page on his computer without paying for the web app membership. I am not sure how to do that.

"edit" I found the answer and is in the following snippet. My problem now is how to pass the data outside the $.post( )?

   function analysis(){
          var  L = "sting";
          var  w   = JSON.stringify(w);
          var  counter = "sting";
  $.post('../php/solver2.php',{L : L , w : w , counter:counter },
 function(data){  jdata  = JSON.parse(data); });
     
            var jdata  = JSON.parse(tempJdata);
            var x          = jdata.x;
            var v          = jdata.v;
       
       return [x v];
 }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://www.gstatic.com/charts/loader.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"> </script>

1
  • 2
    read about ajax request Commented Mar 5, 2022 at 10:07

3 Answers 3

3

Use JSON.stringify() on your array and use AJAX to send it to your php script.

On php side, you can json_decode() that same array and work with it.

You could protect that PHP script with sessions, and return an error if one is not allowed to access it.

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

1 Comment

So the 1. JSON.stringify() will send a string that codifies the array with post to php file 2. ajax to do what exactly ? 3. decode the string in to array process it in php and output the results in to html ?
1

You can't stop someone to download your client side script code.

Check this How do I hide javascript code in a webpage?

And i can check every client side code with the browser developer tools.

Edit: You mean this:

How do I pass JavaScript to PHP?

Sending a JavaScript array to PHP via POST

Pass Javascript Array -> PHP

This are your HTTP request methods(check for browser compatibility):

HTTP request methods

Every operation on the server-side is hidden(on a normal way without bugs or something else) and the result you send to the client is public.

Comments

0

I found the answer sending multiple arrays to php process them and return processed arrays.

          var  L = "sting";
          var  w   = JSON.stringify(w);
          var  counter = "sting";
  $.post('../php/solver2.php',{L : L , w : w , counter:counter },
 function(data){  var jdata  = JSON.parse(data);
                  var x          = jdata.x;
                  var v          = jdata.v;});
     

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.