Skip to content
Advertisement

How to use AJAX to POST to PHP?

As I asked here I would like to know how I could pass the data from a simple JS function to php, and log it there.

I found this answer and tried to follow it. This is my code right now (both in the same file)

JavaScript
JavaScript

However, this does not work. I wouldn’t know how to fix this, whenever I try to google this problem people use more advanced methods, that I wouldn’t even know how to start with.

Edit: My PHP and HMTL are in the same file (index.php). Edit 2: Removed old code for clarity.

This results in these error messages:

JavaScript

Advertisement

Answer

What you want to do with $.post is include your data like this:

JavaScript

where the first of the pair is the POST identifier (the ['screenResolutionW']) and the second of the pair is the variable value.

You will also want to change your POST identifiers to be quoted:

JavaScript

Otherwise, you will get a warning about constants. I have also corrected the spelling in these variables, to reflect what you’re trying to write into your file.

JavaScript

EDIT

Part of the problem is that you never call the function to execute it. Here is your HTML with the additions I have suggested, plus calling the function:

EDIT TWO

Added an onload handler for the document:

JavaScript

OTHER NOTES

You really should separate the PHP code and place it in a different file because when you run the page as it is now you should get one line logged that has no variables when the page initially runs, then one logged line when the JavaScript fires after the page loads.

Then once separated you should not run your PHP until you test for the existence of a variable, for example:

JavaScript

EDIT THREE

I placed all of the JavaScript in the same script block in the head of the file and have tested again:

JavaScript

Here you can see the variables are being posted: enter image description here

User contributions licensed under: CC BY-SA
10 People found this is helpful
Advertisement