Hoi SD'ers,
Ik botste gisteren op een probleem toen ik een registratiescript wilde maken met jQuery en PHP. Het gaat om de callbackfunctie en het doorgeven van een JSON object. Ik besloot even een basis programmaatje op te zetten om te checken of ik het aan de praat kon krijgen. Dat blijkt niet te lukken.
Hier is de code van callbacktest.html:
Dit is de code van callbacktest.phpPHP Code:
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Callbacktest</title>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#form").submit(function() {
var formData = $("#form").serialize();
$.get("callbacktest.php", formData, processData);
function processData(data) {
if (data.status=="pass") {
$("#form").html("<h1>Success</h1>");
alert(data.name);
} else {
$("#form").html("<h1>Fail</h1>");
alert("fail");
};
};
return false;
}); // end submit
}); //end ready
</script>
</head>
<body>
<form name="form" id="form" action="callbacktest.php" method="post">
<input type="text" name="name" id="name" />
<input type="submit" name="submit" id="submit" />
</form>
</body>
</html>
Nu blijft hij "fail" geven, terwijl dit eigenlijk niet mogelijk is want de status in het JSON-object is altijd "pass". Ik vermoed dat er iets niet goed wordt doorgegeven want als ik in callbacktest.html zelf de variabele data = {name: "Nick", status: "pass"} zet dan werkt de if-functie wel en geeft hij "Success".PHP Code:
<?php
$name=isset($_GET['name']) ? $_GET['name'] : $_POST['name'];
?>
{ name: "<?php echo "$name"; ?>", status: "pass" }
Alvast bedankt voor de hulp.
- Ajax (jQuery) + PHP probleem
-
07-08-2010, 10:14 #1
- Berichten
- 43
- Lid sinds
- 16 Jaar
Ajax (jQuery) + PHP probleem
Laatst aangepast door Jesper van E. : 07-08-2010 om 10:24 Reden: Code even in PHP-tags geplaatst voor de mark-up
-
-
07-08-2010, 10:22 #2
- Berichten
- 2.971
- Lid sinds
- 18 Jaar
Kijk eens naar de php functie json_encode() want je bent nu een beetje aan het prutsen :p
-
07-08-2010, 10:30 #3
- Berichten
- 43
- Lid sinds
- 16 Jaar
Dank je Vincent. Het werkt !! :-)
Ga ik nu kijken of ik het in het originele script ook aan de praat kan krijgen.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic