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

Formulaire PHP et base de donnée PHPMYADMIN

Posté par Marie, le mercredi 23 avril 2008 à 20:46:06
Bonjour, je suis tout ce qu'il y a de plus novice en php et je tente de créer un formulaire afin que les gens puissent s'inscrire à une newsletters. J'ai crée ma base de donnée qui est chez un hébergeur. Comment je fais pour que les données de mon formulaire s'enregistre dans ma base de donnée ?

Voici ce que j'ai de fait :

<?php

CREATE TABLE newsletters (
id int(100) NOT NULL auto_increment,
email varchar(150) NOT NULL default '',
nom varchar(150) NOT NULL default '',
date date NOT NULL default '0000-00-00',
PRIMARY KEY (id)
) TYPE=MyISAM;

?>

<form method="POST" action="inscription.php" name="monform">
<table width="64" border="1" cellspacing="2" cellpadding="0">
<tr>
<td>
Nom : <input type="text" name="nom" size="100" maxlength="150"><br />
Courriel : <input type="text" name="mail" size="100" maxlength="150"><br />
</td>
</tr>
</table>
<input type="submit" value="Envoyer">
</form>

J'espère que vous serez en mesure de me donner un petit coup de main.

Merci
Répondre à Marie  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le mercredi 23 avril 2008 à 20:52:27
Salut,

je vais te donner diférents liens très utiles.

Création d'une base de données & la modifier : http://www.siteduzero.com/tuto-3-134-1-phpmyadmin.html#ss_pa­rt_1
Connexion à une base de données & récupérer des données : http://www.siteduzero.com/tuto-3-140-1-lire-des-donnees.html­#ss_part_1
Ajouter, Modifier et Supprimer une données : http://www.siteduzero.com/tuto-3-144-1-ecrire-des-donnees.ht­ml#ss_part_1

Voila bonne chance et re-post si quelque chose est vraiment flou pour toi. Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le mercredi 23 avril 2008 à 22:26:23
Bonjour,

merci beaucoup pour les liens, je suis allée voir, j'ai tout lu et je l'avoue, comprend pas très bien encore tout ce qui se passe. J'ai suivi pas mal tout à la lettre au mieux de mes connaissances et je n'arrive pas à trouver pourquoi cela ne marche pas ... le pire c'est que présentement c'est un problème de htlm je crois. Lorsque je clique sur mon lien pour que s'affiche ma page avec mes champs "nom" et "email" j'ai une erreur dans le bas de mon browser qui dit "error on page" et rien ne fonctionne. Sur mon système tout fonctionne et dès que je transfert le tout j'ai droit à ce message d'erreur. grrrr il y a des journées où on dirait qu'on est bon à rien.

Merci quand même pour votre aide, j'imagine qu'un jour je vais finir par savoir comment faire ...
Répondre à Marie

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le mercredi 23 avril 2008 à 22:38:55
Ok sa marche :P

Déja pour commencer ce code :


<?php

CREATE TABLE newsletters (
id int(100) NOT NULL auto_increment,
email varchar(150) NOT NULL default '',
nom varchar(150) NOT NULL default '',
date date NOT NULL default '0000-00-00',
PRIMARY KEY (id)
) TYPE=MyISAM;

?>

doit ètre executer une fois seulement afin de créer la table après tu peu le suprimer.

Maintenant montre moi le contenue (entier) de ta page html.

On va réussir lol Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le jeudi 24 avril 2008 à 00:03:24
Je t'envoi le tout :

Seulement te mensionner que je travail sur un hébergeur en linux (il n'accepte pas le php en windows).
Comme je le disais dans mon précédent courriel, quand je le test sur mon ordi ca fonctionne mais lors que je transfert le tout sur le web ca ne fonctionne pas. Si tu veux voir le résultat finale voici l'adresse www.barleinn.com tu cliques dans BAR (orange). Tu veras surement l'erreur dont je te parle.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt­d">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Bar Billard Le Inn</title>
<link href="css/basic.css" rel="stylesheet" type="text/css" media="all" />
<csactions>
<csaction name="3bdd323" class="Open Window" type="onevent" val0="inscriptions.html" val1="" val2="700" val3="200" val4="true" val5="true" val6="true" val7="true" val8="true" val9="true" val10="true" urlparams="1"></csaction>
</csactions>
<csscriptdict import="import">
<script type="text/javascript" src="GeneratedItems/CSScriptLib.js"></script­>
</csscriptdict>
<csactiondict>
<script type="text/javascript"><!--
CSAct'3bdd323' = new Array(CSOpenWindow,/*URL*/ 'inscriptions.html','',700,200,true,true,true,true,true,true­,true);

// --></script>
</csactiondict>
</head>
<body leftmargin="0" marginheight="0" marginwidth="0" topmargin="0">
<div style="position:relative;width:779px;height:701px;margi­n:auto;-adbe-g:p;">
<div style="position:absolute;top:0px;left:0px;width:778px;h­eight:153px;">
<img src="images/bar/site-orange_01.jpg" alt="" height="153" width="778" usemap="#site-orange_01" border="0" /></div>
<div style="position:absolute;top:153px;left:0px;width:256px­;height:153px;">
<img src="images/bar/site-orange_02.jpg" alt="" height="153" width="256" border="0" /></div>
<div style="position:absolute;top:153px;left:256px;width:522­px;height:51px;">
<csobj csref="../web-data/Components/Menu_orange.html" h="51" occur="32" t="Component" w="522"><img src="images/bar/site-orange_03.jpg" alt="" height="51" width="522" usemap="#site-bleu_03" border="0" /><map name="site-bleu_03"><area shape="rect" coords="433,0,505,33" href="barcontact.html" alt="" /><area shape="rect" coords="342,0,414,33" href="baremploi.html" alt="" /><area shape="rect" coords="253,0,325,33" href="galeriebar/index.php" alt="" /><area shape="rect" coords="163,1,235,34" href="barservices.html" alt="" /><area shape="rect" coords="78,0,146,33" href="bar.html" alt="" /></map></csobj></div>
<div style="position:absolute;top:204px;left:256px;width:522­px;height:144px;">
<img src="images/bar/site-orange_04.jpg" alt="" height="144" width="522" border="0" /></div>
<div style="position:absolute;top:306px;left:0px;width:256px­;height:394px;">
<img src="images/bar/site-orange_05.jpg" alt="" height="394" width="256" usemap="#site-orange_05ee9341" border="0" /></div>
<div style="position:absolute;top:348px;left:440px;width:338­px;height:352px;">
<img src="images/bar/site-orange_07.jpg" alt="" height="352" width="338" border="0" /></div>
<div style="position:absolute;top:546px;left:256px;width:184­px;height:154px;">
<img src="images/bar/site-orange_08.jpg" alt="" height="154" width="184" border="0" /></div>
<div style="position:absolute;top:348px;left:256px;width:184­px;height:198px;">
<img src="images/bar/site-orange_06.jpg" alt="" height="198" width="184" border="0" /></div>
</div>
<map name="site-orange_05ee9341"><area onclick="CSAction(new Array(/*CMP*/'3bdd323'));return CSClickReturn()" shape="rect" coords="39,243,219,319" href="#" alt="" csclick="3bdd323" /></map>
<p></p>
</body>

</html>
Répondre à Marie

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le jeudi 24 avril 2008 à 00:11:39
Pour une raison inconnu, ca semble marcher. Lorsque je clique sur mon lien j'ai ma windows pop-up qui apparaît mais je ne comprend pas très bien le message d'erreur que m'envoi le système lorsque je fais "envoyer"

Voici le code :

<?php

$em = '';
$nom = '';

mysql_connect($hostname = "localhost" , $username = "Innnews", $password = "b362436Inn");
mysql_select_db("Innnews")
mysql_query("INSERT INTO "newsletters" VALUES(email,nom,date) VALUES('$em','$nom',NOW())";
mysql_close();
?>

Merci énormément pour ton aide !
Répondre à Marie

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le jeudi 24 avril 2008 à 06:40:55
C'est sur quel page ou le problème se situ ? Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le jeudi 24 avril 2008 à 15:30:03
Bonjour,

La page où il y a le lien pour l'inscription est la suivante : www.barleinn.com/bar.html (inscrivez-vous ...) dans le bas de la page.

Lorsque j'entre les informations dans le formulaire (nom et courriel) et que je clique sur envoyer j'ai le message suivant qui apparaît :

Parse error: parse error, unexpected T_VARIABLE in /home/content/b/a/r/barleinn/html/newsletters.php on line 8

Voici le code pour ma page d'inscription :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt­d">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Inscrivez-vous à la newsletters du Inn</title>
<link href="css/basic.css" type="text/css" rel="stylesheet" media="all" />
</head>

<body marginheight="0" topmargin="0">
<p><font face="Verdana, Arial, Helvetica, sans-serif">Inscrivez-vous afin de recevoir les dernières nouvelles du Inn par courriel.</font><form method="POST" action="newsletters.php" name="monform">
<table width="64" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Nom</font> : <input type="text" name="nom" size="100" maxlength="150"><br />
<font face="Verdana, Arial, Helvetica, sans-serif">Courriel :</font> <input type="text" name="mail" size="100" maxlength="150"><br />
</td>
</tr>
</table>
<p><input type="submit" value="Envoyer"></p>
</form></p>
</body>

</html>



Pour ce qui est du reste tout fonctionne maintenant, il ne me reste que cette erreur que je ne comprend pas.

Voici le fichier php qui est supposée envoyer les informations à la base de donnée :

<?php

$em = '';
$nom = '';

mysql_connect($hostname = "localhost" , $username = "Innnews", $password = "**********");
mysql_select_db("Innnews")
$q = "INSERT INTO newsletters (email,nom,date) VALUES('$em','$nom',NOW())";
mysql_query($q);
mysql_close();
?>
Répondre à Marie

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le jeudi 24 avril 2008 à 19:23:05
ok mais il me faudrait la page newsletters.php en entier stop :P Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le jeudi 24 avril 2008 à 19:58:15
Je crois que j'ai compris une petite chose avec ce que tu m'as dit à propos du fichier complet. Je t'envoi donc ce que je crois être correct. J'ai par contre encore une erreur qui dit "Parse error: parse error, unexpected T_VARIABLE in /home/content/b/a/r/barleinn/html/newsletters.php on line 10"

C,est quoi au juste comme erreur ?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt­d">

<?php

$em = '';
$nom = '';

mysql_connect($hostname = "localhost" , $username = "Innnews", $password = "b362436Inn");
mysql_select_db("Innnews")
$q = "INSERT INTO newsletters (email,nom,date) VALUES('$em','$nom',NOW())";
mysql_query($q);
mysql_close();
?>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Inscrivez-vous à la newsletters du Inn</title>
<link href="css/basic.css" type="text/css" rel="stylesheet" media="all" />
</head>

<body marginheight="0" topmargin="0">
<p><font face="Verdana, Arial, Helvetica, sans-serif">Inscrivez-vous afin de recevoir les dernières nouvelles du Inn par courriel.</font><form method="POST" action="newsletters.php" name="monform">
<table width="64" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Nom</font> : <input type="text" name="nom" size="100" maxlength="150"><br />
<font face="Verdana, Arial, Helvetica, sans-serif">Courriel :</font> <input type="text" name="mail" size="100" maxlength="150"><br />
</td>
</tr>
</table>
<p><input type="submit" value="Envoyer"></p>
</form></p>
</body>

</html>
Répondre à Marie

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le jeudi 24 avril 2008 à 20:18:12
Bon pour commencer édit tes post pour éviter de montrer ton mot de passe :P

Après je vais te montrer comment je ferait car je comprend rien à comment sont organisés tes pages ;)

Créer une page de formulaire newsletters.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt­d">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Inscrivez-vous à la newsletters du Inn</title>
<link href="css/basic.css" type="text/css" rel="stylesheet" media="all" />
</head>

<body marginheight="0" topmargin="0">
<p><font face="Verdana, Arial, Helvetica, sans-serif">Inscrivez-vous afin de recevoir les dernières nouvelles du Inn par courriel.</font><form method="POST" action="newsletters.php" name="monform">
<table width="64" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Nom</font> : <input type="text" name="nom" size="100" maxlength="150"><br />
<font face="Verdana, Arial, Helvetica, sans-serif">Courriel :</font> <input type="text" name="mail" size="100" maxlength="150"><br />
</td>
</tr>
</table>
<p><input type="submit" value="Envoyer"></p>
</form></p>
</body>

</html>

Puis une page php newsletters.php ou tu peu insérer le design de ton site :

<?php
$em = $_POST['mail'];
$nom = $_POST['nom'];

mysql_connect($hostname = "***" , $username = "***", $password = "***");
mysql_select_db("***")
mysql_query("INSERT INTO newsletters VALUES('" . $em . "','" . $nom . "',NOW())";);
mysql_close();
?>

Je conais pas NOW() donc peu pas t'aider sur sa :P Sinon c'est un minimum de code qui te permet de voir si sa marche et rendre ton code plus clair pour éviter les erreurs.
Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marie, le jeudi 24 avril 2008 à 20:29:32
Merci beaucoup pour le hint, j'avais complètement oublié que j'avais déjà inscrit les informations dans mon php. Pour ce qui est du NOW, je vais avouer que moi non plus je ne suis pas certaine de ce que sais. Je vais avouer que j'ai tentée de prendre un code source sur un site pour tenter de m'aider. En réalité c'est la date qui serait supposé être là. Je vais chercher voir ce que je pourrais mettre à la place pour que ce soit plus clair.

Merci encore !
Répondre à Marie

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ekudarius, le jeudi 24 avril 2008 à 20:35:10
De rien sinon je te conseil d'aller voir ce tuto pour la date :

http://www.siteduzero.com/tuto-3-186-1-les-dates.html#ss_par­t_1

Bonne chance et n'hesite pas à poster si sa pose encore problème :P

@ bientot Connaissance sur le webmastering : HTML/CSS, PHP/MySql.
Connaissance sur la programmation : Langage C, VHDL.
Ekudarius à votre service ...
Répondre à ekudarius

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Marie, le vendredi 25 avril 2008 à 18:02:32
He oui encore moi,

j'ai un dernier problème ... tout semble fonctionner mais lorsque je test le tout j'ai la réponse "pas de connection" et les données ne s'enregistre pas dans ma base de donnée. J'ai recommencée le travail afin d'essayer de trouver les erreurs. Je te renvoi les codes que j'ai fait. (en beaucoup moins mélangeant)

NEWSLETTERS.HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt­d">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Inscrivez-vous à la newsletters du Inn</title>
<link href="file:////Serveur/cezam%20clients/000%20071%20-%20­Bar%20Le%20Inn/Site%20Web%20-%20Inn/Le%20Inn/web-content/css­/basic.css" type="text/css" rel="stylesheet" media="all" />
</head>
<body marginheight="0" topmargin="0">
<p><font face="Verdana, Arial, Helvetica, sans-serif">Inscrivez-vous afin de recevoir les dernières nouvelles par courriel.</font><form method="POST" action="newsletters.php" name="inscription">
<table width="64" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Nom</font> : <input type="text" name="nom" size="100" maxlength="150"><br />
<font face="Verdana, Arial, Helvetica, sans-serif">Courriel :</font> <input type="text" name="mail" size="100" maxlength="150"><br />
</td>
</tr>
</table>
<p><input type="submit" value="Envoyer"></p>
</form></p>
</body>
</html>


NEWSLETTERS.PHP
<?php
$mabasededonnee = "newsletters";

$connection = mysql_connect("10.6.166.184","newshantee"­;,"news362436H");
// test la connection
if ( ! $connection )
die ("connection impossible");
// Connecte la base
mysql_select_db($mabasededonnee) or die ("pas de connection");


$em = ''; // email
$nom = ''; // Nom ou auteur ou pseudo ou ...

// insertion de la news dans sa table:
$q = "INSERT INTO newsletters (email,nom,date) VALUES('$em','$nom',date(d/m/y))";
mysql_query($q);

?>

Encore un gros merci pour tout l'aide.
Répondre à Marie
Logiciels pertinents trouvés dans les téléchargements
Télécharger Open Workbench 1.1.6Open Workbench - Open Workbench est une application libre de gestion et de planification de projet. Il s'agit d'un équivalent libre de...Catégorie: Gestion de projet
Licence: Open Source
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 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 Visual Basic 6 Runtime (VB6 DLL) 6.0 SP5Visual Basic 6 Runtime (VB6 DLL) - Le Runtime Visual Basic 6 contient l'ensemble des librairies (DLL) nécessaires pour exécuter des programmes écrits en...Catégorie: Librairies (DLL)
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « Formulaire PHP et base de donnée PHPMYADMIN »