jquery ajax get post w3schools fout
Ik wilde met javascript gegevens naar een website toesturen zonder door te linken daarnaar toe.
Dus dat je in de app blijft. daarvoor heb ik iets gevonden op w3schools.com. Alleen die werkt wel bij hun maar niet bij mij.
Toen heb ik het na gekeken op internet en blijkt dat hij niet goed op w3schools staat.
Dit is de code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php",
{
name:"Donald Duck",
city:"Duckburg"
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php",
{
name:"Donald Duck",
city:"Duckburg"
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
Wat is er fout aan?
Alvast bedankt.
Probeer eens:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php",
{
name:"Donald Duck",
city:"Duckburg"
}).done( function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php",
{
name:"Donald Duck",
city:"Duckburg"
}).done( function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
W3schools schijnt niet bepaald een goede site te zijn om te leren. Als je met jQuery werkt, kijk dan altijd even op de jQuery website.
http://api.jquery.com/jQuery.post/
Ik heb het aan gepast zoals je zei alleen het werkt nog steeds niet. Toen ben ik naar de site gegaan waarnaar je toe linkte en de oplossing vond ik daar ook niet. Nu geeft hij elke keer een error aan bij het verwerken, dus dat het niet goed is gegaan:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php", { name: "John", time: "2pm" })
.done(function(data) { alert("Data Loaded: " + data); })
.fail(function() { alert("error"); });
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("http://www.domeinnaam.com/test.php", { name: "John", time: "2pm" })
.done(function(data) { alert("Data Loaded: " + data); })
.fail(function() { alert("error"); });
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
Wat is er dan nog meer fout?
Gewijzigd op 14/08/2013 08:58:47 door patrick vollenbroek
Welke error?
O die alert error (op regel 11 van de code die ik hier boven heb geschreven.)
Draait dat PHPscript op je eigen domein?
Ja dat draait op mijn eigen domein.
Roep dan dan relatief aan: test.php
Code (php)
1
2
3
2
3
$.post('/pad/naar/bestand.php', { var1: value1, var2: value2 }, function(data) {
alert(data);
});
alert(data);
});
Als je het in JSON wilt terugkrijgen:
Toevoeging op 14/08/2013 09:39:59:
En chris, wat je gaf werkt niet.
Dat betekent dus ook: Geen http:// in de url.
Ik heb het nu getest als alle twee in de zelfde map zit en werkt ook niet. Ik heb de code van Chris gebruikt.
Wat is er dan fout?
inex.html:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
var value1 = "John";
var value2 = "2pm";
$.post('test.php', { var1: value1, var2: value2 }, function(data) {
alert(data);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
var value1 = "John";
var value2 = "2pm";
$.post('test.php', { var1: value1, var2: value2 }, function(data) {
alert(data);
});
});
});
</script>
</head>
<body>
<button>Send an HTTP POST request to a page and get the result back</button>
</body>
</html>
test.php:
http://jsfiddle.net/XrLfN/
hier werkt het gewoon. alert krijg je gewoon terug.
open je console in je browser en zie de foutmelding. zonder foutmelding is het gokken. evt online voorbeeld zodat anderen mee kunnen kijken?
hier werkt het gewoon. alert krijg je gewoon terug.
open je console in je browser en zie de foutmelding. zonder foutmelding is het gokken. evt online voorbeeld zodat anderen mee kunnen kijken?
Ik heb nog een vraag kan ik met cross domein, maar één map crossen. Dus dat ik de gegevens naar een map in mijn server stuur en die verwerkt het dan.
Patrick vollenbroek op 14/08/2013 11:21:14:
...Dus dat ik de gegevens naar een map in mijn server stuur en die verwerkt het dan.
Hoe bedoel je precies?
Dus nog steeds vanaf een pagina die lokaal thuis staat, en een map die op de server staat?
Dus alleen een link (http://www.domein.nl/test.php) kan niet, want dat blokkeert de webserver.
Daarom moet cross domein gebeuren. En ik weet dat dat gevaarlijk kan zijn als het over de hele site van toepassing is. Daarom wil ik het alleen op één map op de server cross domein toevoegen.
Hoe moet dat?
Toevoeging op 14/08/2013 11:53:26:
Laat maar, blijkbaar wekt het wel
Toevoeging op 14/08/2013 11:53:47:
Bedankt voor alle hulp
Het is een veiligheidsmaatregel die de webbrowsers moesten inbouwen.
Mocht je zelf een webbrowser kunnen schrijven (bv. met C#), zou cross-browser Ajax perfect kunnen.
(Exact het zelfde geldt bv. voor bestanden. Webbrowsers mogen niet zomaar snuffelen in de bestanden op jouw pc; hoewel ze dat perfect zouden kunnen (Elke windows programma kan dat).)