Insérer variable dans un champ en php

Bonjour,

Je voudrais pouvoir insérer une partie de texte (enfin de code) dans une variable de ma base de données.

	
$fonction_Code="function ff_code_validation()
{
var re = /^[0-9]{5}$/;
if(!re.test(document.getElementById('cp').value)) {
alert('Faux');
} else {
alert('Correct');
}
}";

$request=mysql_query("insert into matable (fonction) values ($fonction_Code)");




Le problème c'est qu'il ne se passe rien...
Mon code est-il mal écrit?
Ps: Je me connecte sans souci a ma bdd

3 réponses

  1. Bonjour,

    Quand tu insères un texte en base de données, il faut entourer ce texte d'apostrophes.
    Sauf que tu as des apostrophes dans ton texte ! Il va donc falloir les échapper.

    Ce qui donne :
    $fonction_Code="function ff_code_validation()
    {
    var re = /^[0-9]{5}$/;
    if(!re.test(document.getElementById('cp').value)) {
    alert('Faux');
    } else {
    alert('Correct');
    }
    }";
    $fonction_Code = addslashes($fonction_Code);
    
    $request=mysql_query("insert into matable (fonction) values ('$fonction_Code')");
    Voilà !

    Xavier
    1. Sa marche nickel

      Je te remercie beaucoup pour ton aide !!!!

      Merci
      1. De façon générale, quand "rien ne se passe" en SQL, c'est qu'il y a une erreur.
        Deux pistes pour les corriger :
        1 - afficher la requête SQL telle qu'elle a été transmise au serveur SQL, pour voir si c'est correct ;
        2 - afficher, après exécution de la requête, l'erreur éventuelle en utilisant echo mysql_error();