Insertion code html dans Mysql

Fermé
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 - 15 sept. 2011 à 21:24
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 - 15 sept. 2011 à 22:58
Bonjour,
Je veux insérer du code html dans une base mysql.
Mon ancien script est
$sql = "UPDATE ads SET code = '$code' WHERE id = $id " ;

J'ai essayer avec ce code
$sql = "UPDATE ads SET code = mysql_real_escape_string('$code') WHERE id = $id " ;
mais ce code me donne une erreur qui dit "FUNCTION ma_base.mysql_real_escape_string does not exist"

Ma table est :
CREATE TABLE 'ads' (
'id' int(11) not null auto_increment,
'nom' varchar(30) not null,
'code' text not null,
KEY 'id' ('id')
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6;

Y-a- t-il quelqu'un qui peux m'aider ?
A voir également:

2 réponses

ze-life-of-quent1 Messages postés 1573 Date d'inscription lundi 8 février 2010 Statut Membre Dernière intervention 17 octobre 2015 776
Modifié par ze-life-of-quent1 le 15/09/2011 à 22:44
Bonjour,
mysql_real_escape_string est une fonction de PHP! Vous devez donc remplacer:
$sql = "UPDATE ads SET code = mysql_real_escape_string('$code') WHERE id = $id " ;
par
$sql = "UPDATE ads SET code='" . mysql_real_escape_string($code) . "' WHERE id='$id'";

EDIT: suppression d'une erreur. Merci à gregreg!
Pas de support par message privé. Et si on pouvais m'appeler Quentin (ça fait plus classe que "ze-life" ^^).
1
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 1
15 sept. 2011 à 22:33
Ce ci me donne une erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id = 2' at line 1
0
mysql_real_escape_string($code) sans les ' '
0
ze-life-of-quent1 Messages postés 1573 Date d'inscription lundi 8 février 2010 Statut Membre Dernière intervention 17 octobre 2015 776
Modifié par ze-life-of-quent1 le 15/09/2011 à 22:51
@nizar_b15: j'ai modifié le second code. Remplacez l'ancien par le nouveau.
@gregreg: merci de l'avoir signalé!
0
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 1
15 sept. 2011 à 22:46
de rien quentin je vais le tester mnt
0
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 1
15 sept. 2011 à 22:58
voila mnt ca marche bien.
mais dans la base avant le code il y a ce code inséré "mysql_real_escape_string(" et apres il y a ") ." Ces deux codes sont affiché sur la page web. Comment je peux les éliminer quand j'utilise ce code la

<?php
mysql_connect("localhost","root","");
mysql_select_db("ma_base") ;
$id=$_GET['id'];
$reponse = mysql_query("SELECT * FROM tv WHERE id=$id;");
while ($donnees = mysql_fetch_array($reponse) )
{
?>
</center>
<h2 style="text-align: center">Regarder la chaine <?php echo $donnees['titre']; ?> en direct</h2>
<center>
<object>
<?php echo $donnees['screen']; ?>
</object></center>

<?php
}
?>
0
-Quentoche- Messages postés 631 Date d'inscription lundi 12 septembre 2011 Statut Membre Dernière intervention 9 décembre 2014 199
15 sept. 2011 à 21:26
Bonsoir,
Tu es bien connecter a ta base de donnees ?
0
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 1
15 sept. 2011 à 21:28
oui biensure. J'ai mis seulement la ligne du code d'insertion.
Voici toute la page :




<?php
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "ma_base" ) ;

//récupération des valeurs des champs:

$id = $_POST["id"] ;
$code = $_POST["code"] ;

//création de la requête SQL:
$sql = "UPDATE ads SET code = '$code' WHERE id = $id " ;

//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;


//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("<p align=\"center\">La modification à été correctement effectuée.<p>") ;
}
else
{
echo("<p align=\"center\">La modification à échouée.<p>") ;
}
?>
0
-Quentoche- Messages postés 631 Date d'inscription lundi 12 septembre 2011 Statut Membre Dernière intervention 9 décembre 2014 199
15 sept. 2011 à 21:33
Le probleme c'est que tu n'execute pas ta variable qui te permet de choisir la base de donnees ($db)

En gros tu demandes de ce connecter a la base de donnees mais il ne s'est pas quel base choisir.
0
nizar_b15 Messages postés 26 Date d'inscription dimanche 11 septembre 2011 Statut Membre Dernière intervention 27 mars 2013 1
15 sept. 2011 à 22:35
Je sélectionne la base par ce code
//sélection de la base de données:
$db = mysql_select_db( "ma_base" ) ;
0