Forum » Server-Side scripting » Met behulp van AJAX iets posten
De causeur!
Berichten: 504
avatar
Offline Stuur privebericht
Hallo iedereen,

Ik zit wat te experimenteren met AJAX, en er wil maar iets niet lukken.
Ik wil dus iets posten met AJAX, wat dan gecontroleerd wordt met behulp van PHP.

Mijn code is nu als volgt:
Code | Selecteer Alles
minimaliseren
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
/*ajax,php*/
<html>
<
head>
<
script type="text/javascript">
function 
plaatsBericht()
{
    var 
naam document.getElementById("naam").value;

    
    var 
loadingMessage 'Wachten...';
    
        if (
window.XMLHttpRequest)
        {
// code for IE7+, Firefox, Chrome, Opera, Safari
            
xmlHttp=new XMLHttpRequest();
        }
        else
        {
// code for IE6, IE5
            
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        
        if(!
xmlHttp)
        {
            
alert("Could not connect!");
        }
        
        
xmlHttp.onreadystatechange=function()
        {
            if(
xmlHttp.readyState && xmlHttp.readyState 4)
            {
                
document.getElementById('result').innerHTML=loadingMessage;
            }
            
            if (
xmlHttp.readyState == 4
            {
 
                
document.getElementById('result').innerHTML=xmlHttp.responseText;
            }    

        }
    
        var 
parameters "naam=" naam;
        
xmlHttp.open("POST","plaatsen.php",true);
        
        
xmlHttp.setRequestHeader("Content-type""application/x-www-form-urlencoded");
        
xmlHttp.setRequestHeader("Content-length"parameters.length);
        
xmlHttp.setRequestHeader("Connection""close");

        
xmlHttp.send(parameters);
    
    
}
</script>
</head>

<body>
<div id="result"></div>
<form action="" method="post">
<input type="text" id="naam" />
<input type="submit" name="submit" value="Plaats dit bericht!" onclick="plaatsBericht()" />
</form>

</body>
</html>


Code | Selecteer Alles
minimaliseren
1
2
3
4
/*plaatsen.php*/
<?php
print_r
($_POST);
?>


Het probleem is dus dat er niks wordt weergegeven in de div 'result'.

Ik heb veel onderzoek gedaan op google, maar het lukt me niet om het te vinden!

Weet iemand wat het probleem is dat je niets te zien krijgt?

Alvast bedankt,
Mees(MrMees)
07-06-2010 19:43
Dit topic is 399 keer bekeken door 80 verschillende leden
Reacties op: "Met behulp van AJAX iets posten"
1
De causeur!
Berichten: 504
avatar
Offline Stuur privébericht
BUMP!
08-06-2010 16:37
Webdeveloper & Programmeu
Berichten: 1001
avatar
Offline Stuur privébericht
Ik zal even binnen 5 minuten in dit bericht een mooi voorbeeld geven.
Geef me even de tijd.

Edit:
http://niels.ngis.nl/projecten/ajax/

Ik heb hier een voorbeeld script gemaakt.
Voor html code zie broncode, php code ziet er als volgt uit in het bestand ajax.php:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?PHP
$input 
$_GET['input'];

if(isset(
$input))
{
    if(
$input == 'test')
    {
        echo 
'Leuk input word ook nog is gecheckt.';    
    }
    else
    {
        echo 
$input;    
    }
}
?>


Wat heb ik gedaan?
Om met ajax te werken heb ik eerst een check moeten schrijven waarmee je kijkt of ajax word verstuurd en kan worden uitgevoerd.

Daarnaast haal ik informatie op en stuur ik het door naar het bestand ajax.php, daar gaat die het informatie verwerken en word de output van het bestand ajax.php uitgelezen in een div genaamd gegevens.

Voor de rest vul is voor de grap test in .
08-06-2010 18:47
De causeur!
Berichten: 504
avatar
Offline Stuur privébericht
Ja, als ik de GET methode gebruikt werkt het bij mij ook.
Dat is juist het vreemde.

Wanneer ik dan de POST functie wilt gebruiken, dan werkt het niet meer. Heel vreemd, ik weet ook niet wat ik fout doe.

Zelfs wachten... komt er gewoon te staan, maar hij laat gewoon de post niet zien...
08-06-2010 20:50
What else?
Berichten: 1180
avatar
Online Stuur privébericht
*bump* op aanvraag.
09-06-2010 21:08
Webdeveloper & Programmeu
Berichten: 1001
avatar
Offline Stuur privébericht
Kijk is naar dit script:
http://www.captain.at/howto-ajax-form-post-request.php

Staat uitgelegd hoe je post moet gebruiken.
Hoop dat ik je hier mee kan helpen.
09-06-2010 21:36
De causeur!
Berichten: 504
avatar
Offline Stuur privébericht
Echt bedankt NielsB.
Na een lange tijd puzzelen is het uiteindelijk gelukt.
Ik denk dat het er vooral aan ligt dat ik men action niet had ingevuld. En daardoor het niet uitvoerde!
10-06-2010 17:02
Webdeveloper & Programmeu
Berichten: 1001
avatar
Offline Stuur privébericht
Mooi om te horen.
Ik gebruik voornamelijk de get functie in mijn projecten voor school.
Post functie heb ik nooit echt geprobeerd, maar ja ik weet ook niet wanneer ik hem nodig zal moeten hebben .

Want wat jij nu hebt gedaan kan ook gemakkelijk met get functie.
Hoor graag van mensen wat slimmer is en waarom dat gene beter is.
10-06-2010 17:32
De causeur!
Berichten: 504
avatar
Offline Stuur privébericht
Ik denk dat dit dan wel helpt:http://javascript.about.com/od/ajax/a/ajaxgp.htm

Ik koos bewust voor de POST functie, omdat ik het wilde gebruiken voor een bericht te plaatsen. Dit was alleen maar een test om te kijken hoe het moest.

EDIT:
Weet jij misschien nog meer wat de moeite is om met AJAX te oefenen?
10-06-2010 17:46
Reageer op: "Met behulp van AJAX iets posten"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden