Online.net insert into variable S_SESSION ???

Résolu
anonyme_boy -  
 anonyme_boy -
Bonjour,

Je viens de créer un site internet (chez ONLINE.net) avec un formulaire d'inscription simple passant par plusieurs page donc j'utilise $_SESSION en vérifiant bien si la données est bien presente (avec echo)
Les données de mes clients doivent être enregistré dans la base de données associèe .

Table de ma base de données => 2 champs : ID et Nom

Champ : ID
Type : BIGINT
Taille/Valeurs*1 : 20
Interclassement :
Attributs :
Null : not null
Défaut2 :
Extra : auto_increment
Commentaires :

Champ : Nom
Type : TEXT
Taille/Valeurs*1 :
Interclassement : latin1_general_ci
Attributs :
Null : not null
Défaut2 :
Extra :
Commentaires :

Maintenant, voici mon code PHP à la fin de mon formulaire pour écrire les données dans la table:

----------------------------------------------------------------------------------------------------------------
<?php
session_start();
?>

<html>
<body>

<?php
$Nom = $_SESSION['Nom'];
?>

<?php

$host = 'BaseDeDonnees.SiteInternet.com';
$base = 'BaseDeDonnees';
$login = 'BaseDeDonnees';
$pwd = 'MotsDePasse';

// Connexion au serveur

$db = mysql_connect($host, $login, $pwd);

// On test le retour de la connexion

if(!$db)
{
// on affiche un message d'erreur :
print "Désolé, connexion impossible à [$host] : ".mysql_error();
exit;
}

echo $Nom;

$sql = 'INSERT INTO `BaseDeDonnees`.`MaTable`(`ID`, `Nom`) VALUES (NULL,'$Nom');';

// Une requête qui retourne une erreur si vous n'avez pas de table

if(!mysql_query($sql,$db))
{
// on affiche un message d'erreur :
print "erreur sur la requête $sql dans la base [$base] du serveur [$host]<br>".mysql_error();
mysql_close($db);
exit;
}

// On a fini de travailler, on ferme la connexion :
mysql_close(); // Déconnexion de MySQL
?>

</body>
</html>
----------------------------------------------------------------------------------------------------------------

Merci de votre aide !!!
Configuration: Windows XP
Internet Explorer 6.0

4 réponses

  1. ThEBiShOp Messages postés 9307 Date d'inscription   Statut Contributeur Dernière intervention   1 606
     
    où se situe ton problème ?
    0
  2. anonyme_boy
     
    Lorsque je test mon site internet, j'ai comme ERREUR :

    "syntax error, unexpected T_VARIABLE"

    pour la ligne :
    $sql = 'INSERT INTO `BaseDeDonnees`.`MaTable`(`ID`, `Nom`) VALUES (NULL,'$Nom');';

    Il semblerai que c'est la syntaxe de la variable '$Nom' qui pose probléme, je ne comprends pas pourquoi !!!
    Je tiens à préciser que je suis hébergé chez ONLINE.net
    0
    1. Alain_42 Messages postés 5413 Statut Membre 904
       
      Bonsoir,

      dans une chaine qui commence et finit par des ' tu ne peux pas mettre des '

      essayes comme ça:

      $sql = "INSERT INTO `BaseDeDonnees`.`MaTable`(`ID`, `Nom`) VALUES (NULL,'".$Nom."');"; 
      0
  3. Benjamincom Messages postés 252 Statut Membre 82
     
    Problème résolut ? Pense à le marqué comme tel en haut de la page ;)
    0
  4. anonyme_boy
     
    Je viens de trouver la solution (sur un autre forum) :

    Etant chez online.net, je ne savais pas que mon site tourne sous PHP5 et php tout court.
    Donc il faut metttre des acolades { et } entre les variables comme ceci :

    $sql = "INSERT INTO `BaseDeDonnees`.`MaTable`(`ID`, `Nom`) VALUES (NULL, '{$Nom}' );";

    ça : '{$Nom}' et pas autre chose.

    PROBLEME RESOLUT, merci quand même ;-)
    0