Comment connecter base de donné à un formulaire de contact

Fermé
samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019 - 19 mars 2015 à 15:07
jordane45 Messages postés 38347 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 décembre 2024 - 25 mars 2015 à 18:33
bonjour, je créee actuellement mon Premier site internet en PHP, HTML et je voudrais savoir comment relier mon formulaire de contact à ma base de données afin de pouvoir récupérer les données sur la base.

merci d'avance pour votre aide

2 réponses

jordane45 Messages postés 38347 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 décembre 2024 4 719
19 mars 2015 à 15:14
Bonjour,

https://www.commentcamarche.net/contents/493-formulaires-html-cours-et-exemples

https://www.commentcamarche.net/contents/793-php-recuperation-de-donnees

https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
0
samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019
19 mars 2015 à 16:18
rebonjour voilà ce que j'ai fait pouvez vous me dire ceux qui n'est pas correct car ça ne fonctionne toujours pas
<?php 
if(isset ($_POST['submit']))
 {
 {

$connect = mysql_connect('localhost','root','root');
mysql_select_db(portfolio); 
}

$NOM = addslashes(mysql_real_escape_string($_POST['NOM']));
$PRENOM = addslashes(mysql_escape_string($_POST['PRENOM']));
$EMAIL = mysql_escape_string($_POST['EMAIL']);
$N°TELEPHONE = mysql_escape_string($_POST['N°TELEPHONE']);
$MESSAGE = mysql_escape_string($_POST['MESSAGE']);
mysql_query("INSERT INTO "contacts" VALUES('', '" . $NOM . "', '" . $PRENOM . "', '" . $EMAIL . "', '".$N°TELEPHONE."', '" .$MESSAGE."')");

 

$NOM =htmlentities(trim($_POST['NOM']));
$PRENOM =htmlentities(trim($_POST['PRENOM']));
$EMAIL =htmlentities(trim($_POST['EMAIL']));
$N°TELEPHONE =htmlentities(trim($_POST['N°TELEPHONE']));
$SUJET =htmlentities(trim($_POST['SUJET']));
$MESSAGE =htmlentities(trim($_POST['MESSAGE']));
}

?>


merci
0
jordane45 Messages postés 38347 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 décembre 2024 4 719 > samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019
Modifié par jordane45 le 19/03/2015 à 19:09
Déjà .. tu n'as pas regardé TOUS les liens que je t'ai donné...
Tu utilises l'extension Mysql_ ... alors que dans le troisième lien il est expliqué qu'il faut désormais éviter...
Je te conseilles d'utiliser la PDO.

Quoi qu'il en soit.. dans ton code actuel... tu as oublié de mettre le nom de ta BDD entre quotes...
mysql_select_db("portfolio"); 


... mais j'insiste... passes à la PDO



En PDO pour se connecter à une BDD Mysql :
<?php
//variables :
$host = "localhost";
$dbName="portfolio";
$user = "root";
$password = "root";

//connexion
try{
 $dsn = "mysql:host=$host;dbname=$dbName";
 $options = array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8' );
 $dbh = new PDO($dsn, $user, $password, $options);
 $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    echo "Échec lors de la connexion : " . $e->getMessage();
}
?>

Bien sûr .. il faut modifier ton code pour utiliser cette nouvelle connexion...
par exemple.. pour faire une requête SELECT..
$sql = "INSERT INTO contacts
           VALUES('', '$NOM','$PRENOM','$EMAIL','$Num_TELEPHONE','$MESSAGE')";
$dbh->exec($sql);



PS: Evites de mettre des caractères spéciaux dans le nom de tes variables ... N°TELEPHONE risque de ne pas passer !


EDIT : correction de la variable $dsn (avec des " " au lieu des ' ' )
0