Bonjour à tous,
J'ai un probleme pour rappeler une valeur de ma base sql avec retour chariot via Ajax. L'enregistrement dans la base se fait bien mais lorsque j'essaie de recuperer cette valeur en l'etat c'est à dire sur plusieurs lignes mon ajax ne fonctionne plus. Alors j'ai trouvé un substitut pour le moment mais ce la ne me convient pas et je voulais savoir si qqu'un connaissait la commande pour recuperer exactement la valeur en l'etat. Une valeur enregistrée sur 3 lignes dans la base recupérée sur 3 lignes en html.
Voila mon code avec ma requete. Ce sera plus simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php


if(!empty($_POST) || !empty($_GET))
{
	if(isset($_POST['type']))
		$type = strip_tags($_POST['type']);
			elseif(isset($_GET['type']))
				$type = strip_tags($_GET['type']);
					else
						$type = '';
	
	if(isset($_POST['id']))
		$id = strip_tags($_POST['id']);
			elseif(isset($_GET['id']))
				$id = strip_tags($_GET['id']);
					else
						$id = '';
	
	if(isset($_POST['form']))
		$form = strip_tags($_POST['form']);
			elseif(isset($_GET['form']))
				$form = strip_tags($_GET['form']);
					else
						$form = '';
	
	if(isset($_POST['target']))
		$target = strip_tags($_POST['target']);
			elseif(isset($_GET['target']))
				$target = strip_tags($_GET['target']);
					else
						$target = '';
	 
	if(isset($_POST['target1']))
		$target1 = strip_tags($_POST['target1']);
			elseif(isset($_GET['target1']))
				$target1 = strip_tags($_GET['target1']);
					else
						$target1 = '';
						
	if(isset($_POST['target2']))
		$target2 = strip_tags($_POST['target2']);
			elseif(isset($_GET['target2']))
				$target2 = strip_tags($_GET['target2']);
					else
						$target2 = '';
						
						
	require("connect_base.php");

	
	
			$req = 'SELECT num_tph,num_fax,csav_notes FROM fiche_csav WHERE nom_csav="'.$id.'"';   
			$res = mysql_query($req,$connect) or die ('Erreur : '.mysql_error() );
			$row = mysql_fetch_assoc($res);
			$str = preg_replace("/(\r\n|\n|\r)/", "  -  ", $row["csav_notes"]); 
Ici ma bidouille mais je remplace juste les retours chariots par un tiret. Ca me plait pas mais ca marche :lol:
					
			echo 'getElement("'.$target.'").value = "'.$row["num_tph"].'";';
		        echo 'getElement("'.$target1.'").value = "'.$row["num_fax"].'";';
		        echo 'getElement("'.$target2.'").value = "'.$str.'";';
	
}
?>
Et voila le code de ma fonction Ajax

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
function requete(page,select,form,target,target1,target2,target3,target4)
{
	getXhr();
 
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4)
		{		
		if(xhr.status == 200 || xhr.status == 304)
			eval(xhr.responseText);
 
		}
	};
 
	xhr.open("POST",page,true);
	xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xhr.send("form="+escape(form)+"&type="+escape(select.id)+"&id="+escape(select.value)+"&target="+escape(target)+"&target1="+escape(target1)+"&target2="+escape(target2)+"&target3="+escape(target3)+"&target4="+escape(target4));
}