Insérer des caractères spéciaux base de données
Fermé
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
-
Modifié par david77179 le 25/01/2015 à 22:53
david77179 Messages postés 155 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 9 janvier 2019 - 11 févr. 2015 à 00:03
david77179 Messages postés 155 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 9 janvier 2019 - 11 févr. 2015 à 00:03
A voir également:
- Insérer des caractères spéciaux base de données
- Caractères spéciaux clavier azerty - Guide
- Caractere speciaux - Guide
- Caractères spéciaux mac - Guide
- Caractères ascii - Guide
- Insérer une vidéo dans powerpoint - Guide
3 réponses
NHenry
Messages postés
15175
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 décembre 2024
350
25 janv. 2015 à 23:01
25 janv. 2015 à 23:01
Quelle erreur et avec quel code ?
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
22
Modifié par david77179 le 4/02/2015 à 15:29
Modifié par david77179 le 4/02/2015 à 15:29
Voici le message d'erreur affiché :
et voici le code :
En sachant que ces erreurs ne s'affichent jamais lorsque je ne mets pas de ' % '
Merci pour votre aide :)
Une fois le problème résolu, pensez à cliquer sur le lien "Marquer comme résolu " =D
Vive les communautés d'entre aides et surtout CommentçaMarche.net
et voici le code :
<?php // ------ AJOUT D'UN UTILISATEUR -------- if(isset($_POST['nom'])){ // on vÈrifie la prÈsence des variables de formulaire (si le formulaire a ÈtÈ envoyÈ) if(($_POST['nom'] == "")){ // si mail ou mot de passe non spÈcifiÈs >> message d'erreur header("Location:newutilisateur.php?erreur=empty"); } // on passe toutes les variables $POST en variables $nom = strtoupper ($_POST['nom']); $prenom = ucwords (strtolower($_POST['prenom'])); $numsecu = $_POST['numsecu']; $mutuelle = $_POST['mutuelle']; $date_client = $_POST['date_client']; $date_envoi_pec = $_POST['date_envoi_pec']; $date_recep_pec = $_POST['date_recep_pec']; $accord_pec = $_POST['accord_pec']; $montant_pec = $_POST['montant_pec']; $date_rappel_1 = $_POST['date_rappel_1']; $coms_rappel_1 = addslashes ($_POST['coms_rappel_1']); $ok_rappel_1 = $_POST['ok_rappel_1']; $date_rappel_2 = $_POST['date_rappel_2']; $coms_rappel_2 = addslashes ($_POST['coms_rappel_2']); $ok_rappel_2 = $_POST['ok_rappel_2']; $date_rappel_3 = $_POST['date_rappel_3']; $coms_rappel_3 = addslashes ($_POST['coms_rappel_3']); $ok_rappel_3 = $_POST['ok_rappel_3']; $cloture = $_POST['cloture']; $date_signature = $_POST['date_signature']; // on fait l'INSERT dans la base de donnÈes $add_user = sprintf("UPDATE clients SET nom='$nom', prenom='$prenom', numsecu='$numsecu', mutuelle='$mutuelle', date_client='$date_client', date_envoi_pec='$date_envoi_pec', date_recep_pec='$date_recep_pec', accord_pec='$accord_pec', montant_pec='$montant_pec', date_rappel_1='$date_rappel_1', coms_rappel_1='$coms_rappel_1',ok_rappel_1='$ok_rappel_1',date_rappel_2='$date_rappel_2', coms_rappel_2='$coms_rappel_2',ok_rappel_2='$ok_rappel_2', date_rappel_3='$date_rappel_3', coms_rappel_3='$coms_rappel_3' ,ok_rappel_3='$ok_rappel_3',cloture='$cloture', date_signature='$date_signature' WHERE name='$nom' AND prename='$prenom'"); mysqli_query ($connection, $add_user) or die ('Erreur SQL !<br>'.$add_user.'<br />'.mysqli_connect_error()); header("Location:../index.php?modifs=ok"); // redirection si crÈation rÈussie } ?>
En sachant que ces erreurs ne s'affichent jamais lorsque je ne mets pas de ' % '
Merci pour votre aide :)
Une fois le problème résolu, pensez à cliquer sur le lien "Marquer comme résolu " =D
Vive les communautés d'entre aides et surtout CommentçaMarche.net
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
22
4 févr. 2015 à 16:39
4 févr. 2015 à 16:39
L'interclassement de ta base de donnée doit poser un problème, Tu devrais la passer en utf8_general_ci tu pourras avoir les accents en plus : )
En modifiant le .htacces
et ensuite juste apres ta connexion à la bdd une requête du genre
si php < version 5
L'exemple de saisie que tu nous indiques
comporte un accent qui n'est pas supporté par l'interclassement de ta base ( latin1 swedish ci )
Je te laisse un petit peu de lecture
http://openclassrooms.com/courses/passer-du-latin1-a-l-unicode
en espérant que cela puisse t'aider, ce n'est qu'une piste, les experts vont me corriger si necessaire : )
cdt
En modifiant le .htacces
php_flag default_charset utf-8ou au debut de tes pages php
<head><meta charset="utf-8" /></head>
et ensuite juste apres ta connexion à la bdd une requête du genre
mysql_connect ('localhost', 'root', '');
mysql_set_charset ('UTF8');
si php < version 5
query("SET NAMES 'utf8'");
L'exemple de saisie que tu nous indiques
le client a laissé un acompte de 10%
comporte un accent qui n'est pas supporté par l'interclassement de ta base ( latin1 swedish ci )
Je te laisse un petit peu de lecture
http://openclassrooms.com/courses/passer-du-latin1-a-l-unicode
en espérant que cela puisse t'aider, ce n'est qu'une piste, les experts vont me corriger si necessaire : )
cdt
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
22
11 févr. 2015 à 00:03
11 févr. 2015 à 00:03
Merci pour ta réponse. Tout cela est déjà fait à l'exception de l'interclassement de la BDD car une fois faite je ne peux plus la modifier..
Les accents passent bien mais toujours rien sur le %..
Les accents passent bien mais toujours rien sur le %..
3 févr. 2015 à 23:51
Le navigateur m'affiche ERREUR SQL et me dis que mes variables ne sont pas déclarées... Alors que lorsqu'il n'y a pas de pourcentage tout passe niquel...
Merci à toi
Modifié par ludobabs le 4/02/2015 à 08:11
tu pourrais nous faire profiter du message d'erreur exact : ) et puis le code incriminé, la structure de la table concernée serait un plus aussi ...
cdt