Hey mensen,
Ik zit nog even wat te programmeren vanavond, en ik probeer voor een website een XMLHTTPRequest werkend te krijgen, maar ik ben niet zo gek bekend met Javascript. Ik heb dit script (een demo scriptje dat ik bewerkt heb) localhost (en ook online even getest) draaien en zoals ik het zie zou het moeten werken, maar dat doet het niet.
Ik probeer een textbestandje te maken waarin de geposte value geplaatst moet worden door middel van een PHP scriptje.
Het gaat fout in het PHP script, maar het vervelende is dat er niks wordt teruggegeven als er iets fout gaat (lees je ziet de echo's niet)
Zou iemand even mee kunnen kijken waar het fout gaat? Thx
De HTML file met de scripts (index.php)
Het php script dat de file zou moeten maken: (scriptHandler.php)
Ik zit nog even wat te programmeren vanavond, en ik probeer voor een website een XMLHTTPRequest werkend te krijgen, maar ik ben niet zo gek bekend met Javascript. Ik heb dit script (een demo scriptje dat ik bewerkt heb) localhost (en ook online even getest) draaien en zoals ik het zie zou het moeten werken, maar dat doet het niet.
Ik probeer een textbestandje te maken waarin de geposte value geplaatst moet worden door middel van een PHP scriptje.
Het gaat fout in het PHP script, maar het vervelende is dat er niks wordt teruggegeven als er iets fout gaat (lees je ziet de echo's niet)
Zou iemand even mee kunnen kijken waar het fout gaat? Thx
De HTML file met de scripts (index.php)
HTML:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Store Post in file...</title> <script language="javascript"> function createXHR() { var request = false; try { request = new ActiveXObject('Msxml2.XMLHTTP'); } catch (err2) { try { request = new ActiveXObject('Microsoft.XMLHTTP'); } catch (err3) { try { request = new XMLHttpRequest(); } catch (err1) { request = false; } } } return request; } </script> <script language="JavaScript"> function Write(url, content) // url is the script and data is a string of parameters { var xhr = createXHR(); xhr.onreadystatechange=function() { if(xhr.readyState == 4) { // nothing for now alert("sent " + url + " " + content); } }; xhr.open("POST", url, true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send(content); } function submitForm() { var content = document.ajax.sentence.value; Write("sciptHandler.php", "file=ajax-post-text.txt&content=" + content); var storing = document.getElementById("storage"); storing.innerHTML = "<p>Now you can view the content of the file you have created</p>. "; } </script> </head> <body bgcolor="#FFFFFF"> <h1>Ajax post</h1> <FORM name="ajax" method="POST" action=""> <p> <input type="text" name="sentence" value="Testdata." size="80"> <INPUT type="button" value="Submit" ONCLICK="submitForm()"> </p> </FORM> <div id="storage"> Nothing for now. </div> </body> </html> |
Het php script dat de file zou moeten maken: (scriptHandler.php)
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| <?php $posted = &$_POST ; echo $posted; $fname=$posted["file"]; if(strcmp($fname, "ajax-post-text.txt") != 0) die("You are not authorized to change this file."); $value = $posted["content"]; $nfile = fopen($fname, "w"); if($nfile != false) { fwrite($nfile, $value); fclose($nfile); } ?> |
[ Voor 0% gewijzigd door moto-moi op 12-12-2009 13:08 . Reden: highlighting leest wat hipper :) ]
Life would be so much easier if I had the source code...