11550 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous, nouveau venu sur ce site j'ai un soucis. je n'arrive pas à faire fonctionner le second $.ajax. J'arrive bien à faire apparaitre un formulaire(dans un écran style pop up), mais pas à récupérer les valeurs.

Alors j'ai ceci dans le fichier javascript :

$('.details_module').livequery('click', function(){
		$('.dialog').remove();
		var element = $(this);
		$.ajax({
			async: false, 
			type: "post",url: "./_ajax/module.php",
			data: "type=details&id_societe="+$(this).attr('title')+"&id_module="+$(this).attr('href'),
			success: function(html){ 
				element.parents('.table').after(html);
			}
		}); 
		$('.dialog').dialog({ title: 'Société '+$(this).children('img').attr('alt'), bgiframe: true, width:400, modal: true, resizable: false, draggable: false });
		$(".datepicker2").datepicker({ dateFormat: 'yy-mm-dd' });
		return false;
	});
	
	$('#valider_module').livequery('click', function(){
	
		var active = 0;
		if($('#active').is(':checked'))
		{
			active = 1;
			var variable = "Oui";
		}
		else
		{
			active = 0;
			var variable = "Non";
		}
		
		 $.ajax({
			async: false,
			type: "post",
			url: "./_ajax/module.php",
			data: "type=update&id_societe="+$('#id_societe').val()+"&id_module="+$('#id_module').val()+"&active="+active+"&date_expiration="+$('#date_expiration').val()+"&param="+$('#param').val(),
			success: function(html){
				$('.active_'+$('#id_module').val()+'_'+$('#id_societe').val()).html(variable);
				$('.date_'+$('#id_module').val()+'_'+$('#id_societe').val()).html($('#date_expiration').val());
		   }
		 });
		 return false;
	});


Et dans ma page j'ai ceci :

include('../_include/libsql.inc.php');

if($_POST['type'] == 'details' && !empty($_POST['id_societe']) && !empty($_POST['id_module']))
{	
	$requete = 'SELECT active, date_expiration, modules_societe.id, param FROM modules_societe, modules WHERE id_module = "'.$_POST['id_module'].'" AND id_societe = "'.$_POST['id_societe'].'" AND id_module = modules.id';
	$info = selection_mysql ($requete,MYSQL_DB);
	
	$req = "SELECT * FROM modules WHERE id = ".$_POST['id_module'].";";
	$module = selection_mysql($req, MYSQL_DB);
	
	if($info[0]->active == 1)
	{
		$checkbox = 'checked="checked"';
	}
	else
	{
		$checkbox = '';
	}
	
	echo '
	<div class="dialog">
		<h4>Module - '.Htmlentities($module[0]->libelle).'</h4>
		<p><img src="./_images/info.png" alt="Active" /> Active</p>
		<h3><input type="checkbox" name="active" id="active" value="" '.$checkbox.' /></h3>
		<p><img src="./_images/info.png" alt="Date" /> Date expiration</p>
		<h3><input type="text" name="date_expiration" id="date_expiration" value="'.$info[0]->date_expiration.'" class="datepicker2" /></h3>';
	
	if(preg_match('#localisation#', $module[0]->libelle))
	{
		echo '
		<p><img src="./_images/info.png" alt="Type" /> Op&eacute;rateur</p>
		<h3>
			<select name="param" id="param">';
			if($info[0]->param == 'orange')
			{
				echo '<option value="orange" selected="selected">Orange</option>';
			}
			else
			{
				echo '<option value="orange">Orange</option>';
			}
				
			if($info[0]->param == 'bouygues')
			{
				echo '<option value="bouygues" selected="selected">Bouygues Telecom</option>';
			}
			else
			{
				echo '<option value="bouygues">Bouygues Telecom</option>';
			}
				
			if($info[0]->param == 'sfr')
			{
				echo '<option value="sfr" selected="selected">Sfr</option>';
			}
			else
			{
				echo '<option value="sfr">Sfr</option>';
			}
			echo '
			</select>
		</h3>';
	}
	
	echo '<input type="hidden" name="id_societe" value="Societe : '.$_POST['id_societe'].'" id="id_societe" />
			 <input type="hidden" name="id_module" value="Module : '.$_POST['id_module'].'" id="id_module" />
				<p class="center"><input type="button" name="valider_module" id="valider_module" value="Modifier" class="submit" /></p>
		</div>';
	
	
}elseif($_POST['type'] == 'update' && !empty($_POST['id_societe']) && !empty($_POST['id_module'])){
	
		$req = "SELECT * 
					FROM modules_societe 
					WHERE id_societe = ".$_POST['id_societe']." 
						AND id_module = ".$_POST['id_module'].";";
		$exist = selection_mysql($req, MYSQL_DB);
		
		if($exist) // update
		{
			if(!isset($_POST['param']) || $_POST['param'] == 'undefined')	
				$param = '';
			else
				$param = $_POST['param'];
				
			$requete = 'UPDATE modules_societe SET active = "'.$_POST['active'].'", date_expiration = "'.$_POST['date_expiration'].'", param = "'.$param.'" 
								WHERE id_societe = "'.$_POST['id_societe'].'" AND id_module = "'.$_POST['id_module'].'"';
		}
		else
		{
			if(!isset($_POST['param']) || $_POST['param'] == 'undefined')	
				$param = '';
			else
				$param = $_POST['param'];
		
			$requete = 'INSERT INTO modules_societe values("", "'.$_POST['active'].'", "'.$_POST['date_expiration'].'" ,"'.$_POST['id_module'].'" ,"'.$_POST['id_societe'].'", "'.$param.'")';
		}
		insertion_msyql($requete, MYSQL_DB);	
		echo "changements effectués";
}


Alors ai je fait une erreur quelque part?
Modifié par piloudu62 (15 Jul 2009 - 16:24)
j'arrive à isoler le soucis, sans réussir à la résoudre, ca doit se passer ici :


$.ajax({
			async: false,
			type: "post",
			url: "./_ajax/module.php",
			data: "type=update&id_societe="+$('#id_societe').val()+"&id_module="+$('#id_module').val()+"&active="+active+"&date_expiration="+$('#date_expiration').val()+"&param="+$('#param').val(),
			success: function(html){
				$('.active_'+$('#id_module').val()+'_'+$('#id_societe').val()).html(variable);
				$('.date_'+$('#id_module').val()+'_'+$('#id_societe').val()).html($('#date_expiration').val());
			}
		 });


ca devrait renvoyer vers la page module.php pour le traitement, mais rien ne se fait...
Modifié par piloudu62 (16 Jul 2009 - 09:19)