Un coup de main, envoi de données via un formulaire et enregistrement sur BDD [Résolu]

Messages postés
13
Date d'inscription
mercredi 14 février 2007
Statut
Membre
Dernière intervention
18 janvier 2012
- - Dernière réponse : cod57
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
- 14 janv. 2012 à 19:33
Bonjour, j'ai créé un formulaire avec une BDD qui correspond, ensuite je ne connais pas très bien la procédure à suivre. Si j'ai bien compris, il faut envoyer les données du formulaire sur un page qui traitera (enregistrement sur BDD) les données et après je pourrais récupérer ces données pour les poster sur la page qui m’intéresse. Donc voila mon formulaire :

<form action="traitement.php" method="post">
Nom,
,

----

Message,
<textarea required name="Message" rows="8" cols="45"/>
</textarea>,

----

Prix,
,

----

Quantité,
,

----

Photos,
,

----

,





</form>


Ensuite j'envoie ces données sur le formulaire de traitement donc (traitement.php):

<?php
if(isset($_POST['Nom'])) $Nom=$_POST['Nom'];
else $Nom="";

if(isset($_POST['Message'])) $Message=$_POST['Message'];
else $Message="";

if(isset($_POST['Prix'])) $Prix=$_POST['Prix'];
else $Prix="";

if(isset($_POST['Quantité'])) $Quantité=$_POST['Quantité'];
else $Quantité="";

if(isset($_POST['Photos'])) $Photos=$_POST['Photos'];
else $Photos="";



$db = mysql_connect('localhost', 'LOGIN', 'MDP') or die('Erreur de connexion '.mysql_error());


mysql_select_db('BDD',$db) or die('Erreur de selection '.mysql_error());


$sql = "INSERT INTO Annonces(idAnnonces, Nom, Message, Prix, Quantité, Photos) VALUES('','$Nom','$Message','$Prix','$Quantité','$Photos')";


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


echo 'L annonce a bien été ajoutée.';

mysql_close();

?>

Voila mon probleme est que les données transmises ne sont pas enregistrées dans la BDD.
Est-ce qu'il y a une erreur que je n'aurais pas relevé ?

Merci d'avance de votre aide.
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8
3
Merci
bonjour

<?php 

if(isset($_POST['sendbutton']) && $_POST['sendbutton']==='Valider'){

    if(isset($_POST['Nom'])) $Nom=$_POST['Nom']; 
    else $Nom=""; 
    
    if(isset($_POST['Message'])) $Message=$_POST['Message']; 
    else $Message=""; 
    
    if(isset($_POST['Prix'])) $Prix=$_POST['Prix']; 
    else $Prix=""; 
    
    if(isset($_POST['Quantité'])) $Quantité=$_POST['Quantité']; 
    else $Quantité=""; 
    
    if(isset($_FILES['Photos'])){
    
    $Photos=$_FILES['Photos']['name'];
    
    /*ex il faut un repertoire uplaod_rep a la racine du script pour stocker la photo*/
    
    move_uploaded_file($_FILES['Photos']['tmp_name'],'upload_rep/'.$_FILES['Photos']['name']);
    
    }else{
    $Photos=""; 
    }
    
    
    /*mettre tes identifiants*/
    $db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
    
    
    mysql_select_db('abcdef',$db) or die('Erreur de selection '.mysql_error()); 
    
    
    $sql = "INSERT INTO Annonces(idAnnonces, Nom, Message, Prix, Quantite, Photos) VALUES('','$Nom','$Message','$Prix','$Quantité','$Photos')"; 
    
        
    mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); 
          
    
    mysql_close();

}else{
//formulaire pas soumis
} 

?> 


formulaire.html

<!--http://medias.obs-mip.fr/www/Activite/Formation/Informatique/sgbd/cours009.html-->
<form action="traitement.php" method="post" enctype="multipart/form-data" > 
Nom,
,

----

Message,
<textarea required name="Message" rows="8" cols="45"/>
</textarea>,

----

Prix,
,

----

Quantité,
,

----

Photos,
,

----

,

 



</form> 

je parle de la sécurité absente du code pour l'instant

tu dois avoir un enctype dans le form pour envoyer un fichier
les fichiers qui sont envoyé par le client passe par $_FILES et pas
$_POST






Bonne programmation !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 202 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cod57
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8
0
Merci
NE MAIS pas D'ACCENT SUR LES CHAMPS DE TA TABLE 'Quantité mais Quantite' ça évitera des erreurs de charset utf8 et iso-8851-1 ...
Bonne programmation !
Commenter la réponse de cod57
Messages postés
13
Date d'inscription
mercredi 14 février 2007
Statut
Membre
Dernière intervention
18 janvier 2012
0
Merci
Bonjour, je suis un autodidacte qui souhaiterais créer son site internet de vente en ligne, je me suis aidé de divers cours notamment sur le site du zéro, php débutant mais aussi grâce à ce forum. Je ne me suis pas encore plongé sur la sécurité puisqu'avant tout j'aimerais poser les bases de mon site et finir son design et m'attaquer à la sécurité par la suite. Connaitriez-vous des références de livres ou sites internet qui seraient susceptible de m'aider ?

Merci de votre aide, le code fonctionne à merveille.

Cordialement
Commenter la réponse de cs_Dranog
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8
0
Merci
Il y a une section tutoriels sur phpcs

ou

Tapez le texte de l'url ici.

... google est ton ami

coté sécurité il faut pas négliger un upload (on peut d'envoyer un fichier .php et l’exécuter à ton insu ...) ,les échanges avec les bases
de données sont à protéger contre les hacks, injections sql ...
tu devrais voir du côté du manuel la fonction

strip_tags() et mysql_real_escape_string()
Tapez le texte de l'url ici.


Bonne programmation !
Commenter la réponse de cod57