Lien entre formulaire HTML et base de donné SQL - Programmation
Ceci répond-il à votre question ? Oui | Non
 

Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Lien entre formulaire HTML et base de donné SQL
 
Profil : IDNaute
Plus d'informations

bonjour
tout d'abord je tiens a précisé que j'ai déjà lu des sujet contenant le meme titre que mon sujet j'ai adapté a chaque fois leur code php au mien etc et je ne trouve toujours pas la solution a mon probleme qui est facil mais je ne vois pas l'erreur :( alors :

j'ai un formulaire de test simple voir super simple :

<p>
Cette page, elle aussi, ne contient que du HTML.<br />
Veuillez taper votre prénom :
</p>

<form action="bdd.php" method="post">
<p>
<input type="text" name="nom" /> <input type="submit" value="Valider" />
</p>
</form>


de l'autre coté j'ai créer une base de donné nommé : bdd
avec une table nommé : informations
puis cette table contenant plusieur champs :
Nom Prénom E-mail etc ..

la page de ma base de donné bdd.php est :

<?php

mysql_connect("localhost", "root" ); // Connexion à MySQL
mysql_select_db("bdd" ); // Sélection de la base coursphp

$nom = $_POST['nom'];

mysql_query("insert into '$Nom'(nom) values('$nom');" );
$result=mysql_query($query) or die ("l'insertion des données est impossible" );



mysql_close(); // Déconnexion de MySQL
?>

le probleme est que je n'arrive pas a :
quand je clique sur le bouton envoyer du formulaire cela ne maffiche rien dans ma base de donné

merci

Liens

Profil : IDNaute
Plus d'informations

Tu es sûr de ta requête SQL ? Car, ta variable $Nom ne contient pas le nom de ta table dans le bout de code ci-dessus.

Essaye de remplacer ta requête par :

Code :
  1. $sql = 'INSERT INTO `Informations` (nom) VALUES ("'.$_POST['nom']."')';



A noter que ton code n'est absolument pas sécurisé : renseigne toi sur les injections SQL. ;)


---------------
Sethpolma
Profil : IDNaute
Plus d'informations

déjà merci beaucoup de m'avoir répondu :) !
ensuite oui je sais ce n'est pas sécurisé :) c'est juste un code pour m'entrainé car je suis novice :)
donc j'ai remplacé par ce que tu ma dis et sa donne donc ceci ?? :

<?php

mysql_connect("localhost", "root" ); // Connexion à MySQL
mysql_select_db("bdd" ); // Sélection de la base coursphp

$nom = $_POST['nom'];

$sql = 'INSERT INTO `Informations` (nom) VALUES ("'.$_POST['nom']."')';
$result=mysql_query($query) or die ("l'insertion des données est impossible" );


mysql_close(); // Déconnexion de MySQL
?>

la déjà dans mon NOTEPAD ++ le texte est devenu tout gris ce n'est pas bon signe et apres j'ai éssayé et sa ne marche toujours pas :s

Profil : IDNaute
Plus d'informations

ps: je ne suis sur de rien :s sauf de ce que je t'es dit :
de l'autre coté j'ai créer une base de donné nommé : bdd
avec une table nommé : informations
puis cette table contenant plusieur champs :
Nom Prénom E-mail etc ..
sa et mon formulaire c'est du sur je pence. le probleme se situe aux niveau des requetes comme tu dit :s et je ne mi connais pas trop trop :s

edit: il me met en message d'erreur : Parse error: syntax error, unexpected T_STRING in C:\wamp\www\Site Voiture\bdd.php on line 9
avec ce que tu mas dit d'entré comme requete


Message édité par flipflop94 le 02-02-2008 à 23:30:15
Profil : IDNaute
Plus d'informations

voila mon nouveau code cette fois si aucun message d'erreur mais rien n'apparait : c'est tout blanc !:

<?php

mysql_connect("localhost", "root" ); // Connexion à MySQL
mysql_select_db("bdd" ); // Sélection de la base coursphp

$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));

mysql_query("INSERT INTO informations VALUES('$nom')" );



mysql_close(); // Déconnexion de MySQL
?>


----------------------------------------------------------------------------------------

edit : voila encore un nouveau code qui me parait plus juste ( me parait lol) mais toujours une pages blanche sans messages d'erreur ni mes donnés :

<?php

mysql_connect("localhost", "root" ); // Connexion à MySQL
mysql_select_db("bdd" ); // Sélection de la base coursphp

$nom= $_POST['nom'];

$sql =" INSERT INTO informations (nom) VALUES('$nom')";

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

mysql_close(); // Déconnexion de MySQL
?>

re re édit !! (grrr) je précise que j'utilise WAMP et que je n'éberge chez personne mon site ! je fais en intranet ou je sais pas comment sa sapelle si sa peu aider ....
et UP please !


Message édité par flipflop94 le 03-02-2008 à 17:42:08

Profil : Extensionaute
Plus d'informations

Salut,

Je suis pas sûr que le 3ème paramètre de mysql_connect ne soit pas obligatoire... il faut spécifier le password.

Sinon, est-ce que ta table s'appelle informations ?

Remplace :

Code :
  1. mysql_connect("localhost", "root" ); // Connexion à MySQL 
  2. mysql_select_db("bdd" ); // Sélection de la base coursphp



par :

Code :
  1. mysql_connect("localhost", "root", "" ) or die("Erreur de connexion à mysql" ); // Connexion à MySQL 
  2. mysql_select_db("bdd" ) or die("Impossible de sélectionner cette base de données" ); // Sélection de la base coursphp


---------------
==> Créez votre brute et défiez OmaR_ShaRif <==
Un adulte est un grand enfant qui croit qu'il sait.
Un enfant est un petit adulte qui sait qu'il croit.
Profil : IDNaute
Plus d'informations

merci de ton aide mais non enfait je pence qu'il se connecte bien a la base de donné je pence que c'est plutot au niveau des variables ou je sais pas trop.
pc: aucun message d'erreur de connection juste une page blanche :s

ba BDD a bien une table nomé information avec dedans des champs : Nom, Prénom etc.

Profil : IDNaute
Plus d'informations

Si la page est blanche c'est pas parce que tu n'affiche rien? Parce que le code que tu nous a montrer n'affiche rien du tout ce qui est normal ...


Message édité par loic m le 04-02-2008 à 20:20:30

Profil : Extensionaute
Plus d'informations

là tu dis qu'elle s'appelle information, et tu insères dans informations, c'est pas la même chose. Au passage, si tu pouvais faire un effort sur la compréhension de tes phrases, ça serait pas mal.


---------------
==> Créez votre brute et défiez OmaR_ShaRif <==
Un adulte est un grand enfant qui croit qu'il sait.
Un enfant est un petit adulte qui sait qu'il croit.
Profil : IDNaute
Plus d'informations

oki désolé :s
je te disais que j'ai crée une base de donnée nomée : bdd dedans j'ai créer une table informations dans laquelle j'ai créer des champs : Nom;Prenom etc.
voila que veux tu dire toi par : tu dis qu'elle s'appelle information, et tu insères dans informations ? tu veux dire que j'ai oublié le S ? faut d'orthographe dsl si c'est sa que tu voulais dire moi j'ai bien informations et informations


Profil : Extensionaute
Plus d'informations

oui c'était la faute. mais je peux pas savoir si c'est une faute ou si tu t'es trompé :)

 

ajoute un error_reporting(E_ALL); au tout début de ta page, et dis nous si tu as toujours aucune erreur

 


Edit: et donne nous le code entier de ta page.


Message édité par OmaR_ShaRi f le 05-02-2008 à 20:00:14

---------------
==> Créez votre brute et défiez OmaR_ShaRif <==
Un adulte est un grand enfant qui croit qu'il sait.
Un enfant est un petit adulte qui sait qu'il croit.
Profil : IDNaute
Plus d'informations

Notice: Undefined variable: Nom in C:\wamp\www\Site Voiture\bdd.php on line 10
merci de me répondre tu es gentil :)
sinon il me met ce méssage comme érreur et c sur la ligne donc 10 qui correspond a :
$sql =" INSERT INTO informations (Nom) VALUES('$Nom')";
tadaaa lol
mon code de la page de la base de donnée :


<?php
error_reporting(E_ALL);
mysql_connect("localhost", "root", "" ) or die("Erreur de connexion à mysql" ); // Connexion à MySQL
mysql_select_db("bdd" ) or die("Impossible de sélectionner cette base de données" ); // Sélection de la base coursphp


$nom= $_POST['Nom'];

$sql =" INSERT INTO informations (Nom) VALUES('$Nom')";

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

mysql_close(); // Déconnexion de MySQL
?>


mon code du formulaire :
attention c'est long parceque ya pas que le formulaire :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<link rel="stylesheet" media="screen" type="text/css" title="css" href="css.css" />

<title>Recensement & recherche des Vols de véhicules</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<div id="en_tete">

</div>
<div id="menu">

<div class="element_menu">
<h3>..:: Menu ::..</h3>
<ul>
<li><a href="Acceuil.php">Acceuil</a></li>
<li><a href="Comment proceder.php">Comment procéder ?</a></li>
<li><a href="S'inscrire.php">S'inscrire !</a></li>
<li><a href="Service voiture.php">Service voiture</a></li>
<li><a href="Service deux roues.php">Service deux roues</a></li>
<li><a href="Rechercher.php">Rechercher</a></li>
<li><a href="Nous contacter.php">Nous contacter</a></li>


</ul>
</div>


</div>

<div id="corps">
<p>
Cette page, elle aussi, ne contient que du HTML.<br />
Veuillez taper votre prénom :
</p>

<form action="bdd.php" method="post">
<p>
<input type="text" name="Nom" /> <input type="submit" value="Valider" />
</p>
</form>
</div>

<div id="pied_de_page">
Copyright 2008-2009 - Tous droits réservés : " Recensement et recherche de véhicule volés " <sup>©</sup></br>
Reproduction et diffusion strictement interdite - Droits d'usage strictement personnel
</div>

</body>
</html>
et cette page s'appelle new 22.html

merci a toi :)



EDIT: pourtant je vois pas le probleme au niveau de l'erreur grrr!! je veux que dans ma base de donnée appellé bdd et que dans la table appellé informations (avec le s :) ) dans laquelle il y a le champs Nom apparaise un certaint texte posté et écrit dans le formulaire

vu que je suis jamais clair ( et ta eu raison de me le dire on me le dis souvent lol) un tit schéma :) :
bdd => informations => Nom


Message édité par flipflop94 le 06-02-2008 à 19:18:37

Profil : Extensionaute
Plus d'informations

Salut,

En problème est les majuscules / minuscules.
Notice: Undefined variable: Nom in C:\wamp\www\Site Voiture\bdd.php on line 10 veut dire que la variable $Nom n'est pas définie à la ligne 10. Or, à la ligne 10, tu utilises $Nom, sauf que tu as défini la variable $nom (sans N majuscule)..

Soit tu définies $Nom et tu le réutilises dans ta requête, soit tu le fais avec $nom, mais $nom différent de $Nom


---------------
==> Créez votre brute et défiez OmaR_ShaRif <==
Un adulte est un grand enfant qui croit qu'il sait.
Un enfant est un petit adulte qui sait qu'il croit.
Profil : IDNaute
Plus d'informations

c'est exact grosse erreur d'inatention de ma part lol merci beaucoup sa doit résoudre le probleme :) mais .......... toujours un probleme pour ma part embetant parcequ'il ni a plus de message d'erreur lol ! une page blanche maintenant ! c'est bon signe car plus d'erreur mais bon il ni a rien d'afficher :( (meme avec sa : error_reporting(E_ALL);

mon code maintenant :

<?php
error_reporting(E_ALL);
mysql_connect("localhost", "root", "" ) or die("Erreur de connexion à mysql" ); // Connexion à MySQL
mysql_select_db("bdd" ) or die("Impossible de sélectionner cette base de données" ); // Sélection de la base coursphp


$Nom= $_POST['Nom'];

$sql =" INSERT INTO informations (Nom) VALUES('$Nom')";

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

mysql_close(); // Déconnexion de MySQL
?>


Profil : Extensionaute
Plus d'informations

et bien tu n'affiches rien sur ta page.
Donc, maintenant ta requête a fonctionné et tu as une ligne de plus dans ta table.


Non ?


---------------
==> Créez votre brute et défiez OmaR_ShaRif <==
Un adulte est un grand enfant qui croit qu'il sait.
Un enfant est un petit adulte qui sait qu'il croit.
Profil : IDNaute
Plus d'informations

heu mais comment le voir que j'ai une ligne de plus dans ma table ? si je passe par phpmyadmin je sélectionne ma base de donné puis ma table informations et la j'ai mes champ Nom;Prenom etc mais pas azertyuiop que j'ai rentré dans le formulaire et que j'ai fait valider par la suite et que la page blanche est apparu apres lol

merci a toi ;)

Profil : IDNaute
Plus d'informations

edit : a siiiiiiiii siiiii siii c'est marqué !! goood tu es exelent attend c'est bete mais je dois manger je revien lol parceque j'au un autre soucis


Message édité par flipflop94 le 06-02-2008 à 21:05:05
Profil : IDNaute
Plus d'informations

donc je reprend calmement lol :
un grand merci car tout marche a merveille sa c'est le premierement
deuxiemement j'aimerais afficher ces donnés :s car elle sont "cachés"
j'aimerais plus précisément que des que l'on fais valider sur le formulaire on voyent les donnés que l'on a écrites sur la BDD

encore merci a toi :)

EDIT:Opération réussi excuze moi :s

Donc un grand merci je vais pouvoir avancer merci beaucoup !


Message édité par flipflop94 le 06-02-2008 à 22:11:40