rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

MySQL: chaines de char, apostrophes et BD

Posté par tonguim, le jeudi 22 septembre 2005 à 11:43:10
Bonjour,

je ne peux pas inserer dans ma table, des chaînes de caracteres qui contiennent des apostrophes. Exemple de chaine de caractère que je ne peux insérer: l'actualité sur le site web de l'uo.
Comment puis je résoudre ce problème? Merci

NB: j'utilise PHP pour l'insertion des données dans la table. Voici ma requête:

		<?php
			$connection=mysql_connect("localhost", "root", "");
			if($connection)
			{
				$bd=mysql_select_db("sitewuo");
				if($bd)
				{	
					//$date=date("Y-n-d H:i:s");
					$requete="insert into articles values ('', '$_POST[rubrique]', '$_POST[titre]', '$_POST[resume]', '$_POST[corps]', null)";
					mysql_query($requete) or die(mysql_error());
				}
				else
					die (mysql_error());
			}
			else
				die (mysql_error());
		?>


// ma table mySql


CREATE TABLE `articles` (
`numero` VARCHAR( 5 ) NOT NULL ,
`titre` VARCHAR( 255 ) NOT NULL ,
`resume` TEXT NOT NULL ,
`corps` TEXT NOT NULL ,
`date` timestamp( 14) NOT NULL ,
PRIMARY KEY ( `numero` )
);


J'ai pensé, a mettre des caracteres d'échappement, mais les textes que je dois stocker dans la table s'étendent sur des dizaines de lignes. Alors mettre des \' a chaque fois que je rencontre des apostrophes, ce n'est pas du tout pratique. Il doit y avoir bien un autre moyen, non?
Répondre à tonguim  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
tonguim, le jeudi 22 septembre 2005 à 11:52:25
Le sujet exact de mon message est plutôt: chaines de caractères avec apostrophes, et Base de Données MySQL
Répondre à tonguim

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
StreM, le jeudi 22 septembre 2005 à 13:42:50
Essaie ca :
$requete="insert into articles values ('', '".$_POST[rubrique]."', '".$_POST[titre]."', '".$_POST[resume]."', '".$_POST[corps]."', null)";

On ne peut pas mettre des variables de type array entre guillemets.
Il faut en sortir. C'est dommage, mais c'est comme ca.

Moins le blanc est intelligent, plus le noir lui parait bête
Répondre à StreM

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Erdnax, le jeudi 22 septembre 2005 à 15:28:38
T'es sûr que ça vaut aussi pour les doubles guillemets ?

L'erreur vient pas plutôt de ses $_POST[rubrique] qui n'ont pas eux de ' ? Par exemple :
$_POST['rubrique']
Et sinon, pour mettre des caractères d'échapement à tes textes, s'ils sont rentrés par des formulaires, tu peux utiliser la fonction addslashes qui fera ça pour toi ;)
Punvf cnf dhbv zrgger...
Répondre à Erdnax

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
StreM, le jeudi 22 septembre 2005 à 17:15:01
Ah oui, aussi !
Enfin perso, il me semble que
echo "tralala $_POST['var'] youpie"; 
renvoie une erreur
Moins le blanc est intelligent, plus le noir lui parait bête
Répondre à StreM

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 tonguim, le jeudi 22 septembre 2005 à 20:18:50
Merci à strem et erdnax. J'ai resolu le problème des apostrophes en utilisant la fonction addslashes de php et ca marche.

si $texte = "Un exemple d'utilisation de l'apostrophe";

alors $texte = addslashes($texte) retournera "Un exemple de l\\'utilisation de l\\'apostrophe" ...
Répondre à tonguim
Logiciels pertinents trouvés dans les téléchargements
Télécharger MySQL 5.0.51bMySQL - MySQL est une des systèmes de gestion de bases de données le plus répandu au monde. Catégorie: Bases de données
Licence: Open Source
Télécharger BootVis 1.3.37.0BootVis - Si votre ordinateur est lent à démarrer, il est possible d'améliorer la vitesse de chargement en optimisant le processus de...Catégorie: Optimisation
Licence: Freeware/gratuit
Télécharger WAMP Server 2.0cWAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de...Catégorie: Serveurs
Licence: Freeware/gratuit
Télécharger easyPHP 2.0b1easyPHP - EasyPHP est un environnement de travail packagé comprenant le serveur web Apache, le système de gestion de bases de données...Catégorie: Serveurs
Licence: Open Source
Plus de logiciels gratuits sur « MySQL: chaines de char, apostrophes et BD »