Passing data from PHP to JavaScript: methods, their pros and cons, and how to implement them

  Рет қаралды 47,264

Dave Hollingworth

Dave Hollingworth

Күн бұрын

PHP for Beginners course: ➤ davehollingworth.net/phpy
PHP MVC course: ► davehollingworth.net/phpmvcy
CodeIgniter 4 course: ► davehollingworth.net/codeigni...
If you have a variable in PHP, and you need to use its value in JavaScript in the browser, how do you get the value of this variable from PHP to JavaScript?
In this video we'll look at various solutions to achieve this, from writing out the value into the JavaScript or DOM in the original request, making sure we escape it, to using a cookie, and using Ajax. We'll also look at their advantages and disadvantages.
Which method you choose depends on how much data there is, and how complex your page is: whether it's a simple PHP script or a more complex web applications.
Code shown in the video:
gist.github.com/daveh/56fd2fa...
00:00 Intro
00:17 The problem
01:21 Simple echo
03:11 Escaping
05:00 JSON encoding
06:10 Hidden field
07:58 Meta tag
09:04 Data attribute
10:30 Cookie
13:20 Ajax request
16:14 Summary

Пікірлер: 80
@nadimalaa8961
@nadimalaa8961 Жыл бұрын
I will look back on those days where I am starting to learn PHP, and remember how Dave Hollingworth made me love PHP.
@ashikmehermobin9926
@ashikmehermobin9926 2 жыл бұрын
I think You are one of the most underrated applied content creator in you tube
@Artem977471
@Artem977471 3 жыл бұрын
Thanks a lot, Dave. You are incredible teacher!
@codingzen869
@codingzen869 3 жыл бұрын
Your channel is absolutely underrated. You are incredibly good at explaining with simplicity and deserve way more bigger audience.
@dave-hollingworth
@dave-hollingworth 3 жыл бұрын
Thank you so much for your kind words!
@abedabdesselem9491
@abedabdesselem9491 2 жыл бұрын
Very informative and straight forward, thanks a lot.
@lammabing6401
@lammabing6401 Жыл бұрын
Really clear and concise demonstrations & explanations. Appreciated. Thanks.
@Isra-p1
@Isra-p1 3 жыл бұрын
Wow Dave this video is very well done, thorough and informative as usual, thank you.
@ozgrymn
@ozgrymn 3 жыл бұрын
Very nice and clean explanation, awesome, thank you!
@israrguldurrani
@israrguldurrani Жыл бұрын
It is a very helpful video. Thank you Dave!
@fatimaadreeta
@fatimaadreeta 2 жыл бұрын
An absolutely beautiful video. Any form of thank you would be an understatement 🙏🙏💚💚
@johnpaul5836
@johnpaul5836 2 жыл бұрын
Superb tutorial. The best I have seen on this subject.
@mounir101
@mounir101 2 жыл бұрын
Thanks so much Dave, we got the idea.
@codeclassroom
@codeclassroom 3 жыл бұрын
I have learned a lot in this video. You are very clear and nice.
@NoahNobody
@NoahNobody 3 жыл бұрын
Oww, so many neat tricks. And that meta tag assignment blew my mind.
@qwerasdf1727
@qwerasdf1727 2 жыл бұрын
really helpful tutorial! thanks a lot for your job!
@pitaji_badewale
@pitaji_badewale 2 жыл бұрын
Thanks brother for this amazing content
@pellepels50
@pellepels50 Жыл бұрын
Very good explained. Thanks
@hiajayy
@hiajayy 3 жыл бұрын
Nice explanation.thank you🙏
@tiksong7613
@tiksong7613 15 күн бұрын
Thank you so much.
@abat_dauletbaev
@abat_dauletbaev 3 жыл бұрын
Thank you very much for information, really useful.
@constantine9074
@constantine9074 Жыл бұрын
Ive been searching for this !!!!!!!
@javierrodriguez4218
@javierrodriguez4218 3 жыл бұрын
Very comprehensive!
@med3060
@med3060 3 жыл бұрын
thank you so much Dave !
@kevin_neugebauer
@kevin_neugebauer 6 ай бұрын
thanks! very great tutorial!
@fraidoonhu9284
@fraidoonhu9284 3 жыл бұрын
Wow thanks, you are great.
@technoking536
@technoking536 9 ай бұрын
Great!
@Alextaggart4908
@Alextaggart4908 Жыл бұрын
That was helpful
@ademineshat
@ademineshat 3 жыл бұрын
Very useful 👍 thanks
@anurajms
@anurajms Жыл бұрын
thank you
@itouswenqtenrih9018
@itouswenqtenrih9018 2 жыл бұрын
Thank you
@JuanBotes
@JuanBotes Жыл бұрын
thanks for sharing your knowledge \o/
@Dexter101x
@Dexter101x 3 ай бұрын
Dayam, never knew how to code cookies, and setting the json to the header, a new thing for me as well
@rohitadhikari3811
@rohitadhikari3811 3 ай бұрын
Is php still popular?
@emperoroftheearth3215
@emperoroftheearth3215 3 жыл бұрын
Thanks
@mounir101
@mounir101 2 жыл бұрын
I've subscribed to get more lessons.
@emmanuellyons6827
@emmanuellyons6827 3 ай бұрын
Please make a video about a social media website like Facebook in php Nothing deep, just the basics of getting posts. ❤️
@NedumEze
@NedumEze 2 жыл бұрын
Wow! Amazing! Thank you so much sir. Can I believe it's also possible the other way? Javascript to PHP?
@dave-hollingworth
@dave-hollingworth 2 жыл бұрын
Yes, if you send any HTTP request to a PHP script using Ajax, you can send data to a PHP script on the server
@AzharUddin-ob7vb
@AzharUddin-ob7vb 2 жыл бұрын
I know this is off topic But can you make an video How to encrypt url or query parameter in JavaScript and decrypt in php Using cryptoJS I think no one have created this video and it's very imp to know everyone
@dave-hollingworth
@dave-hollingworth 2 жыл бұрын
Ok will look into it, thank you for the recommendation!
@gorgosanma
@gorgosanma 2 жыл бұрын
Very clear and nice video. But I'm finding out how much I hate working with php and javascript. If I want to have 2 separate files to send a value from js to php, let the php process and bring back a variable there's no way to do this. I have to do like this example altogether but it ends up with a monster code in one file. Man, I swear once I finish this project I'm out of php or even coding for good. This is so frustrating! Sorry, I needed to vent.
@mnamihas
@mnamihas 10 ай бұрын
@pablokaram1411
@pablokaram1411 3 жыл бұрын
Big fan of all your courses!!!, Dave can you help me with one question please? i need to pass an array from PHP to a script of JS in the same page, to use the array as a value of an object's property inside the JS script, (i try to embedd in the "labels" property of Chart JS an array of information comming from the database) i tried a lot of techniques but i can't succeed in the task, do you have any recomendation?
@dave-hollingworth
@dave-hollingworth 3 жыл бұрын
Did the techniques shown in this video not work for you? If not, I would try doing it step by step, first writing out the array from PHP, then making sure JavaScript can access it ok, then try assigning that value to the object property in JavaScript. The browser console can help here to show you any errors in the variable value that might occur.
@photoinshot1355
@photoinshot1355 Жыл бұрын
Excellent tutorial, very well explained, very clearly presented, many thanks I found it very interesting and helpful, especially the last example using a data.php file. You mentioned this is better for large amounts of data but you only gave an example with one variable. I have failed to get it to work with two variables. Being relatively new to JS I tried the obvious: $name = "Bill"; $lastName = "Smith"; header('Content-Type: application/json'); echo json_encode($name, $lastName); Then $name = "Bill"; $lastName = "Smith"; header('Content-Type: application/json'); echo json_encode($name); echo json_encode($lastName); How could I alter it to work, I'm thinking there must be a simple way, the data I want to use is not really related as in this example I thought I would just try it out.
@dave-hollingworth
@dave-hollingworth Жыл бұрын
Just to clarify, this is PHP code and not JS code. Try encoding them in an array: echo json_encode(["name" => $name, "lastName" => $lastName]);
@photoinshot1355
@photoinshot1355 Жыл бұрын
@@dave-hollingworth Thanks for taking the time to answer my question, I really appreciate it. Having changed the code to: $name = "Bill"; $lastName = "Smith"; header('Content-Type: application/json'); echo json_encode(["name"=>$name,"lastName"=>$lastName]); I now get this in the alert message: Hello [object Object] When using this as the js script: fetch('data.php') .then(function(response){ return response.json(); }) .then(function(data){ alert('Hello '+ data); }); I know I must be missing something really basic here but I would appreciate a nudge in the right direction if possible. Thanks
@photoinshot1355
@photoinshot1355 Жыл бұрын
Thanks for anyone else interested I got a working solution by doing the following: let name, lastName =[]; fetch('data.php') .then(function(response){ return response.json(); }) .then(function(data){ name=data.name; lastName=data.lastName; alert('Hello '+ data); console.log(name); }); Many thanks again for a very helpful video.
@dave-hollingworth
@dave-hollingworth Жыл бұрын
@@photoinshot1355 Thank you for posting your solution!
@dave-hollingworth
@dave-hollingworth Жыл бұрын
@@photoinshot1355 In the JavaScript, "data" is an object, so try alert("Hello " + data.name);
@TheJohcker
@TheJohcker 2 жыл бұрын
Do you use php framework, what php framework you recommended? Thanks.
@dave-hollingworth
@dave-hollingworth 2 жыл бұрын
I recommend CodeIgniter, as it's lightweight and simple
@fastcontact
@fastcontact 3 жыл бұрын
you could also use localstorage as another method, too ;)
@dave-hollingworth
@dave-hollingworth 3 жыл бұрын
Well, you can only store a value in local storage using JavaScript, so you'd have the same issue - e.g. window.localStorage.setItem("name", "");
@seeker3794
@seeker3794 6 күн бұрын
How to make all files separate?
@kkch980
@kkch980 Жыл бұрын
In Laravel 9, how to pass a data from controller file to the JavaScript in blade.php view file?
@dave-hollingworth
@dave-hollingworth Жыл бұрын
You can probably just do it the same way as in plain PHP, but instead of using echo, use the blade equivalent to print out a variable, e.g. {{ $name }}
@kkch980
@kkch980 Жыл бұрын
@@dave-hollingworth thank you
@seeker3794
@seeker3794 6 күн бұрын
Can't we have php html and javascript separately? For I have recognized the extension of .html is .php in your video.
@dave-hollingworth
@dave-hollingworth 5 күн бұрын
Yes, you can separate them into different files if you like, that's quite common
@Edflow720
@Edflow720 Ай бұрын
I need the value of a decimal number, this value in decimal is in PHP code, but I need the data in the Script, all this inside the same file, as well as your first examples in this video. Can you tell me how to get it? I'm not getting any data from the PHP to the Script.
@dave-hollingworth
@dave-hollingworth Ай бұрын
The examples shown in the video should work for decimal values - what happens when you try it, do you get any errors?
@Edflow720
@Edflow720 Ай бұрын
@@dave-hollingworth When I put the PHP variable in the Script, it does not receive the information, even I have put it in several ways and I have printed it in the console, it does not receive any value at all.
@dave-hollingworth
@dave-hollingworth Ай бұрын
@@Edflow720 What code are you using to print out the value?
@ramonlips9586
@ramonlips9586 4 ай бұрын
Which IDE are you using?
@dave-hollingworth
@dave-hollingworth 4 ай бұрын
Visual Studio Code
@ramonlips9586
@ramonlips9586 4 ай бұрын
@@dave-hollingworth which theming extensions? Cause yours looks hella clean
@dave-hollingworth
@dave-hollingworth 4 ай бұрын
@@ramonlips9586 I disabled all the programming assistants, which although useful when coding, are a distraction when teaching. I based it on this: medium.com/@marciobarrios/minimal-user-interface-for-visual-studio-code-2ab849eb6d8e
@techgensu2039
@techgensu2039 2 жыл бұрын
sir is it possible to pass query result using ajax fetch()? please give me a sample code
@dave-hollingworth
@dave-hollingworth 2 жыл бұрын
One way would be to encode the data in PHP into JSON, for example fetching it as an associative array, then using json_encode to write it out as JSON. You can then read this JSON easily in the client.
@pgclecturesworld
@pgclecturesworld 2 ай бұрын
hi brother i want to some little favour of your. Javascript problem in php. can you help to solve this?
@dave-hollingworth
@dave-hollingworth 2 ай бұрын
Please describe your problem
@g7k993
@g7k993 3 жыл бұрын
Mobile device users would appreciate a bigger font ( for the code ~18pt). Was hard seeing the code using my iPhone.
@dave-hollingworth
@dave-hollingworth 3 жыл бұрын
Ok, noted! Will look into that for the next video.
@temirkhanamanbaev42
@temirkhanamanbaev42 Жыл бұрын
Explanation in plain language
@indrajitmandal5985
@indrajitmandal5985 Ай бұрын
Getting an error:- "Syntax Error: not a valid json"
@dave-hollingworth
@dave-hollingworth Ай бұрын
You can validate JSON here: jsonlint.com/
Ten Steps to Mastering the Fetch API
2:19:52
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 38 М.
How did CatNap end up in Luca cartoon?🙀
00:16
LOL
Рет қаралды 7 МЛН
Glow Stick Secret 😱 #shorts
00:37
Mr DegrEE
Рет қаралды 130 МЛН
PHP on the frontend! No more Javascript!
14:47
Aaron Francis
Рет қаралды 114 М.
You might not need useEffect() ...
21:45
Academind
Рет қаралды 137 М.
AJAX Crash Course (Vanilla JavaScript)
1:09:43
Traversy Media
Рет қаралды 712 М.
100+ Web Development Things you Should Know
13:18
Fireship
Рет қаралды 1,4 МЛН
Are we going back to PHP with fullstack JavaScript?
9:57
Maximilian Schwarzmüller
Рет қаралды 83 М.
How to FETCH data from an API using JavaScript ↩️
14:17
Bro Code
Рет қаралды 72 М.
Learn JSON files in 10 minutes! 📄
10:09
Bro Code
Рет қаралды 29 М.
Use JavaScript to Get Value from a Textbox and Display on the Page
7:00
Six Minutes. Smarter.
Рет қаралды 182 М.
Build this JS calculator in 15 minutes! 🖩
15:20
Bro Code
Рет қаралды 322 М.
GET Data from API & Display in HTML with JavaScript Fetch API
5:50
Вы поможете украсть ваш iPhone
0:56
Romancev768
Рет қаралды 620 М.