Reponse a la connection a ma base de donnée
schyllinger
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
schyllinger Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
schyllinger Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
bonjour j'ai reussi a decanter mon probleme en utilisant ce code
<?php
//RECUPERATION DATA
if (isset ( $_GET['nom']))
{
$nom=$_GET['nom'];
$prenom=$_GET['prenom'];
$num=$_GET['phone'];
/*
a une base mysql en local */
$connect = mysql_connect ( "localhost", "root", "" );
/* selection de la base de donnée mysql */
mysql_select_db ( "db_sylla", $connect );
/* la requête. */
$requete="insert INTO contact(nom,prenom,contact) values('$nom','$prenom','$num')";
mysql_query($requete,$connect) or die(mysql_error());
/* fermeture de la connection */
mysql_close ( $connect );
}
?>
desormais j'arrive a communiquer avec ma base de donnée mais seulement le probleme est que jutilise la methode get au lieu de post ce qui n'est pas conseillé.sa ne marche pas quand j'utilise la method post.je n'ai que des messages d'erreur.pourriez vous m'aider a faire fonctionner ce code avec la methode post.
<?php
//RECUPERATION DATA
if (isset ( $_GET['nom']))
{
$nom=$_GET['nom'];
$prenom=$_GET['prenom'];
$num=$_GET['phone'];
/*
a une base mysql en local */
$connect = mysql_connect ( "localhost", "root", "" );
/* selection de la base de donnée mysql */
mysql_select_db ( "db_sylla", $connect );
/* la requête. */
$requete="insert INTO contact(nom,prenom,contact) values('$nom','$prenom','$num')";
mysql_query($requete,$connect) or die(mysql_error());
/* fermeture de la connection */
mysql_close ( $connect );
}
?>
desormais j'arrive a communiquer avec ma base de donnée mais seulement le probleme est que jutilise la methode get au lieu de post ce qui n'est pas conseillé.sa ne marche pas quand j'utilise la method post.je n'ai que des messages d'erreur.pourriez vous m'aider a faire fonctionner ce code avec la methode post.
A voir également:
- Reponse a la connection a ma base de donnée
- Se connecter à gmail sur téléphone - Guide
- Réponse automatique thunderbird - Guide
- Comment connecter chromecast à la télé - Guide
- Se connecter à ma boite hotmail - Guide
- Base de registre - Guide
16 réponses
Ta balise de formulaire :
Si ton PHP est sur la même page que ton formulaire, utilises isset() pour savoir si le formulaire a été envoyé.
<form method="post" action="">Il suffit de remplacer tous tes $_GET par $_POST.
Si ton PHP est sur la même page que ton formulaire, utilises isset() pour savoir si le formulaire a été envoyé.
<?php if(isset($_POST['nom'])) { // si le champ "nom" existe, les autres aussi forcément $nom = trim($_POST['nom']); $prenom = trim($_POST['prenom']); $num = trim($_POST['phone']); $pdo = new PDO('mysql:host=localhost;dbname=db_sylla','root',''); $sql = 'INSERT INTO contact(nom,prenom,contact) values(:nom,:prenom,:num)'; $req = $pdo->prepare($sql); $req->execute(array( ':nom' => $nom, ':prenom' => $prenom, ':num' => $num )); echo 'Données envoyée.'; } else { ?> <!-- Ton formulaire --> <?php } ?>
MERCI F16 SA MARCHE parfaitement.nous sommes 5 dans notre entreprise et moi je suis stagiaire parmi les developpeur mais personne n'a reussi a decanter sa si ce n'etais pas toi j'alliais continuer avec la methode get.
Mais jaimerais que le message donnée envoyée aparaisse dans mon formulaire et disparaisse si possible.
Mais jaimerais que le message donnée envoyée aparaisse dans mon formulaire et disparaisse si possible.
Ton formulaire :
Dans ton entête (entre <head> et </head>) :
Le fichier jquery-ui-1.8.custom.min.js
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
<form method="post" action=""> <?php if(isset($_POST['nom'])) { // si le champ "nom" existe, les autres aussi forcément $nom = trim($_POST['nom']); $prenom = trim($_POST['prenom']); $num = trim($_POST['phone']); $pdo = new PDO('mysql:host=localhost;dbname=db_sylla','root',''); $sql = 'INSERT INTO contact(nom,prenom,contact) values(:nom,:prenom,:num)'; $req = $pdo->prepare($sql); $req->execute(array( ':nom' => $nom, ':prenom' => $prenom, ':num' => $num )); echo '<div class="success">Données envoyée.</div>'; } ?> <p> <label for="nom">Nom :</label><br/> <input type="text" name="nom" id="nom" /> </p> <p> <label for="prenom">Prénom :</label><br/> <input type="text" name="prenom" id="prenom" /> </p> <p> <label for="phone">Numéro de téléphone :</label><br/> <input type="text" name="phone" id="phone" /> </p> <p> <input type="submit" value="Envoyer" /> </p> </form>
Dans ton entête (entre <head> et </head>) :
<style type="text/css"> .success { border:solid 1px green; color:green; width:280px; padding:7px; } </style> <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="jquery-ui-1.8.custom.min.js"></script> <script type="text/javascript"> $(document).ready(function() { if($('.success') !== null) { $('.success').effect('pulsate').fadeOut('slow'); } }); </script>
Le fichier jquery-ui-1.8.custom.min.js
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
pour le moment sa ne marche pas.je vais recuperer tout ton code pour remplacer entierement le contenu de mon formulaire pour voir si sa marche.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai oublié de copier une partie ; regarde dans mon message précédent, je l'ai édité.
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
salut f16 AU fait je ne comprend pas grande chose a ton code .le lien jquery-ui-1.8 custom je ne sais pas a koi il sert ;
ensuite tout le code que tu m'as envoye se trouve dans le formulaire;
les differents champ que tu as fais avec les labels je les ai deja fait voila pouqui j'ai dit que ton tout premier code que tu mas envoyé marchais ;donc je suis un peu perdu si tu peu me situer un peu sa me ferais plaisir.
ensuite tout le code que tu m'as envoye se trouve dans le formulaire;
les differents champ que tu as fais avec les labels je les ai deja fait voila pouqui j'ai dit que ton tout premier code que tu mas envoyé marchais ;donc je suis un peu perdu si tu peu me situer un peu sa me ferais plaisir.
Dans mon message (le n°3), tu as 2 codes.
Le premier, qui va de <form ...> à </form> est à mettre à la place de ton formulaire.
Le second est à mettre dans l'entête de ta page, c'est-à-dire entre les balises <head> et </head> déjà présentes.
Ensuite, télécharges l'archive via le lien tout au fond et extrais-la : tu auras un fichier nommé "jquery-ui-1.8.custom.min.js" à mettre dans le même dossier que celui de ta page contenant le formulaire.
Le premier, qui va de <form ...> à </form> est à mettre à la place de ton formulaire.
Le second est à mettre dans l'entête de ta page, c'est-à-dire entre les balises <head> et </head> déjà présentes.
Ensuite, télécharges l'archive via le lien tout au fond et extrais-la : tu auras un fichier nommé "jquery-ui-1.8.custom.min.js" à mettre dans le même dossier que celui de ta page contenant le formulaire.
j'ai bel et bien telechargé le fichier "jquery-ui-1.8.custom.min.js" mais je ne sais pas ou le placer.je l'ai placé dans le dossier qui contient mon site cad dans le dossier
www qui est la racine.je n'ai pas le resultat que je cherche.Donc situe moi un peu sur ou je dois le placer svp.
www qui est la racine.je n'ai pas le resultat que je cherche.Donc situe moi un peu sur ou je dois le placer svp.
"mais je ne sais pas ou le placer."
Je te l'ai déjà dit : dans le même dossier que ta page, "à côté" si tu préfères.
Par exemple :
Je te l'ai déjà dit : dans le même dossier que ta page, "à côté" si tu préfères.
Par exemple :
www/ - autredossier1/ - autredossier2/ - autrefichier1 - autrefichier2 - formulaire.php - index.php - jquery-ui-1.8.custom.min.js
C'est pour ajouter un effet de pulsation/clignotement quand le message apparait.
Ainsi, le message clignote quelques fois puis disparait.
Ainsi, le message clignote quelques fois puis disparait.
j'ai un autre probleme plus grave les champ nom,prenom,numero que je rempli ne vont plus dans ma base de donnée,depuis que j'ai effacé le contenu de mon formulaire pour mettre le votre.je sais plus comment faire pour recuperer mon premier formulaire.
Je l'ai testé et il est parfaitement opérationnel.
Vérifies que ton nom d'utilisateur soit bien "root", qu'il n'y ai pas de mot de passe, que le nom de la base de données soit bien "db_sylla" et que le champ censé contenir $num (= $_POST['phone']) soit bien "contact".
Si tu as une erreur, tu peux la copier ici.
Vérifies que ton nom d'utilisateur soit bien "root", qu'il n'y ai pas de mot de passe, que le nom de la base de données soit bien "db_sylla" et que le champ censé contenir $num (= $_POST['phone']) soit bien "contact".
Si tu as une erreur, tu peux la copier ici.
OK MERCI sa marche grace a toi j'ai compri que j'ai commencé a faire du webmastering.
Mais d'autres inquietudes ma base de donné enregistre tout ce qu'on lui apporte ce qui n'est pas normal il faut qu'on arive pas a mettre des chifres dans le champ nom ainsi de suite.
et puis quand je rentre un nom dans mon formulaire sa sort 2 nom dans ma base de donné ce qui me tromatise aussi; si tu peux m'aider car je n'irai pas a la maison aujourd'hui.
si tu peus me laisser un contact ou te joindre sa me ferais plaisir;
Mais d'autres inquietudes ma base de donné enregistre tout ce qu'on lui apporte ce qui n'est pas normal il faut qu'on arive pas a mettre des chifres dans le champ nom ainsi de suite.
et puis quand je rentre un nom dans mon formulaire sa sort 2 nom dans ma base de donné ce qui me tromatise aussi; si tu peux m'aider car je n'irai pas a la maison aujourd'hui.
si tu peus me laisser un contact ou te joindre sa me ferais plaisir;