J'utilise le plugin Form de JQuery .. J'ai ajouté le fichier js de Form plugin.Psting les données de formulaires avec JQuery Form Plugin au contrôleur cakephp
Déjà une forme est dans mon code..beforeSubmit avertit correctement les contenus de forme actuelle, je veux cette valeur dans après mon serverside..I essayé avec ce qui suit, mais ne fonctionne pas ...
Mon code est
<?php echo $form->create('Result',array('action'=>'submit'));?>
//some input text fields,texarea fields
<?php echo $form->end('submit');?>
<script>
$(document).ready(function(){
var options = {
beforeSubmit: showRequest, // pre-submit callback
success: showResponse, // post-submit callback
url: "http://localhost/cake_1.2.1.8004/index.php/results/submit1",
type: 'POST',
resetForm: true // reset the form after successful submit
};
$('#ResultSubmit1Form').submit(function() {
$(this).ajaxSubmit(options);
return false;
});
});//ready
// pre-submit callback
function showRequest(formData, jqForm, options) {
var queryString = $.param(formData);
alert('About to submit: \n\n' + queryString);
$.ajax({
type: "POST",
url: "http://localhost/cake_1.2.1.8004/index.php/results/submit1",
data: "str="+queryString,
success: function(msg){
alert("Data Saved: " + msg);
}
});
return true;
}
// post-submit callback
function showResponse(responseText, statusText) {
alert('status: ' + statusText + '\n\nresponseText: \n' + responseText +
'\n\nThe output div should have already been updated with the responseText.');
}
Et dans mon contrôleur CakePHP
<?php
class ResultsController extends AppController
{
var $name = 'Results';
var $helpers=array('Html','Ajax','Javascript','Form');
var $components = array('RequestHandler','Email');
var $uses=array('Form','User','Attribute','Result');
function submit($id = null)
{
$str=$_POST['str'];
echo "POSTED value ".$str;
}
}
ya J'ai essayé avec l'URL que vous avez donner .. En fait pour la sortie eg..My de Querystring sera _method = POST & nom1 = valeur1 & nom2 = valeur2 Mais maintenant que _method = POST est renvoyé en écho ... – useranon