Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/11/2011, 21h54   #1
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
Par défaut Conversion non souhaité de caractère lors de l'insertion.

Bonjour,

J'ai un soucis que je n'ai jamais eu dans le passé.

Lorsque je fais un simple insert dans une table mysql certains accent sont remplacé je ne sais pas pourquoi, voila ce qui change :
Chaine d'origine : é"'èàç
Chaine mysql : é'"èàç

Je ne sais pas pourquoi à et è sont remplacé.

Est ce que quelqu'un aurait une idée de ce soucis?

Merci pour votre aide.
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 21h57   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
c'est pareil la
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h20   #3
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
J'essai dans la balise code :
Code :
1
2
3
4
 
é'"èàç
au lieu de 
é'"èàç
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h23   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
tu dois sans doute faire un htmlentities quelque part, montre ton code d'insere
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h29   #5
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
non pas de htmlentities, sinon le a serai transformé en à
je ne sais p as d'ou cela viens.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
$nature = mysql_real_escape_string($_POST['nature']);
	$unite = mysql_real_escape_string($_POST['unite']);
	$compagnies = mysql_real_escape_string($_POST['compagnies']);
	$date = dateus(mysql_real_escape_string($_POST['date']));
	$horaires = mysql_real_escape_string($_POST['horaires']);
	$directives = mysql_real_escape_string($_POST['directives']);
         ......
	$infractions = $_POST['infractions'];
 
	//INSERTION t_cr_missions
	$sql = "INSERT INTO `t_cr_missions` (`id_cr` ,`nature` ,`unite` ,`compagnie` ,`date` ,`horaires` ,`directives` ... ,`propositions`)
VALUES ('$id_cr', '$nature', '$unite', '$compagnies', '$date', '$horaires', '$directives'... '$propositions')";
	$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
	$id_cr = mysql_insert_id();
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h31   #6
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
et au moment de l'affichage ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h34   #7
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
non en fait quand je regarde à l'aide de phpmyadmin, ce sont les valeurs remplacées qui apparaissent.
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h38   #8
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
Citation:
Envoyé par morgan47 Voir le message
non en fait quand je regarde à l'aide de phpmyadmin, ce sont les valeurs remplacées qui apparaissent.
fait un var_dump($_POST, $sql); avant ton mysql_query
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h45   #9
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
Voila :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
array(27) {
  ["id_cr"]=>
  string(1) "3"
  ["nature"]=>
  string(16) "iaé&#232;&#224;ç"
  ["unite"]=>
  string(8) "COB AGEN"
  ["compagnies"]=>
  string(4) "AGEN"
  ["date"]=>
  string(10) "23/11/2011"
  ["horaires"]=>
  string(7) "12H-18H"
  ["directives"]=>
 
...
 
  string(0) ""
  ["modif_cr"]=>
  string(8) "Modifier"
}
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 23h47   #10
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
donc c'est coté client que ça va pas
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 00h00   #11
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
C'est à dire? j'utilise firefox, et mes collègues on le même problème sur leur PC.
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 00h16   #12
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
t'as un control javascript ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 00h41   #13
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
j'ai ça en jvascript :

Code :
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
 
<script language="Javascript">
// Transfert une ligne de la liste Origine a la liste Destination
function TransfertListe(idOrigine, idDestination)
{	var objOrigine = document.getElementById(idOrigine);
	var objDestination = document.getElementById(idDestination);
	if (objOrigine.options.selectedIndex<0) return false;
	//if (VerifValeurDansListe(idDestination, objOrigine.options[objOrigine.options.selectedIndex].value, true)) return false;
	var ADeplacer = new Option(objOrigine.options[objOrigine.options.selectedIndex].text, objOrigine.options[objOrigine.options.selectedIndex].value);
	objDestination.options[objDestination.length]=ADeplacer;
	objOrigine.options[objOrigine.options.selectedIndex]=null;
}
 
// Vérifie la présence de Valeur dans IdListe
function VerifValeurDansListe(IdListe, Valeur, blnAlerte) {
	var objListe = document.getElementById(IdListe);
	for (i=objListe.length-1;i>=0;i--) if (objListe.options[i].value == Valeur) {if (blnAlerte) alert('Déja présent.'); return true;}
	return false;
}
 
function PostSelect(liste){
// On compte le nombre d'item de la liste select
NbCol1 = document.forms[liste].elements.tab_id_res.length;
// On lance une boucle pour selectionner tous les items
for(a=0; a<NbCol1; a++){
document.forms[liste].elements.tab_id_res.options[a].selected = true;
}
// On modifie l'ID du champ select pour que PHP traite cette
// derniere comme un array
document.forms[liste].elements.tab_id_res.name = "tab_id_res[]";
// On soumet le formulaire
//document.forms[liste].submit();
} 
 
function validation() 
{
		if (doconfirm('Etes-vous sur de vouloir envoyer votre compte-rendu ?') == false)
		{
			return false;
		}
 
       	if((document.cr.nature.value == "") || (document.cr.unite.value == "") || (document.cr.date.value == "") || (document.cr.horaires.value == "") || (document.cr.directives.value == "") || (document.cr.vehicules.value == "") || (document.cr.compagnies.value == "")) 
		{ 
			alert ('Un champs obligatoire n\'est pas rempli'); 
			return false; 
    	}
 
		else 
		{
			PostSelect('cr');
			return true;
		}
}
</script>
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 10h43   #14
Membre actif
 
Inscription : juin 2006
Messages : 545
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 545
Points : 174
Points : 174
J'ai mis le charset charset=iso-8859-1 au lieu de charset=iso-8859-2 et ça fonctionne.
morgan47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h16.


 
 
 
 
Partenaires

Hébergement Web