Problème d'insertion dans une table

kaoutar90 Messages postés 40 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 8 octobre 2011 - 7 oct. 2011 à 22:22
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 8 oct. 2011 à 10:53
Bonjour,
J'ai un problème dans la requête pour insertion alors SVP veuillez me dire le problème ou il est :
Pour la page .php :
<?php
$db new PDO("mysql:host localhost; dbname=mysql", "root", "");
$req = "insert into client values('".$_GET["Code"]."','".$_GET["Nom"]."','".$_GET["Prenom"]."','".$_GET["Adresse"]."','".$_GET["Tel"]."')";
$db->query($req);
echo "<html> Client ajouté avec succès
</html>";
?>

pour la page .html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv ="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>


<form action="AjouterClient.php" method="get" style=" table-layout:auto; border:solid; border-color: blue;" >
Code :, ,

----

Nom :, ,

----

Prenom :, ,

----

Adresse:, ,

----

Tel:, ,

----


</form>

</html>

Pour l'afficage il m'affiche le client ajouter avec succées c'est tout !

10 réponses

cs_rinuom99 Messages postés 91 Date d'inscription dimanche 12 août 2007 Statut Membre Dernière intervention 21 septembre 2014 1
7 oct. 2011 à 23:36
ça donne quoi comme message d'erreur !?
0
kaoutar90 Messages postés 40 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 8 octobre 2011
8 oct. 2011 à 00:05
il m'affiche aucun message d'erreur il m'affiche rien une page blanche , il n'affiche meme pas l'interface pour remplir les zones de text pour que je puisse inserer dans la table !!
0
cs_rinuom99 Messages postés 91 Date d'inscription dimanche 12 août 2007 Statut Membre Dernière intervention 21 septembre 2014 1
8 oct. 2011 à 00:31
pour commencer, pourquoi tu utilises la méthode get et pas post !!?
0
kaoutar90 Messages postés 40 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 8 octobre 2011
8 oct. 2011 à 00:41
Quand je l'utilise voila l'erreur qui m'affiche :


Notice: Undefined index: Code in D:\wamp\www\Test\AjouterClient.php on line 3

Notice: Undefined index: Nom in D:\wamp\www\Test\AjouterClient.php on line 3

Notice: Undefined index: Prenom in D:\wamp\www\Test\AjouterClient.php on line 3

Notice: Undefined index: Adresse in D:\wamp\www\Test\AjouterClient.php on line 3

Notice: Undefined index: Tel in D:\wamp\www\Test\AjouterClient.php on line 3
Client ajouté avec succès
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_rinuom99 Messages postés 91 Date d'inscription dimanche 12 août 2007 Statut Membre Dernière intervention 21 septembre 2014 1
8 oct. 2011 à 00:52
essayer avec la méthode post comme suite :

sur le formulaire :
<form action="AjouterClient.php" method="POST" style=" table-layout:auto; border:solid; border-color: blue;" >

et sur la page php :

<?php
$code=$_POST['code'];
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$adresse=$_POST['adresse'];
$tel=$_POST['tel'];
$db new PDO("mysql:host localhost; dbname=mysql", "root", "");
$req = "insert into client values('$code','$nom','"$prenom','$adresse','$tel')";
$db->query($req);
echo "<html>Client ajouté avec succès
</html>";
?>
0
kaoutar90 Messages postés 40 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 8 octobre 2011
8 oct. 2011 à 01:10
wii j'ai dèjà essayée mais ca na pa marché :S
0
cs_rinuom99 Messages postés 91 Date d'inscription dimanche 12 août 2007 Statut Membre Dernière intervention 21 septembre 2014 1
8 oct. 2011 à 01:27
t'as essayé avec la fonction mysql_connect()!!?
juste pour voir
0
kaoutar90 Messages postés 40 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 8 octobre 2011
8 oct. 2011 à 01:29
wiii !!
0
cs_rinuom99 Messages postés 91 Date d'inscription dimanche 12 août 2007 Statut Membre Dernière intervention 21 septembre 2014 1
8 oct. 2011 à 01:34
et ça marche, je viens de la tester chez moi, et ça fonctionne
sauf si tu es obligé d'utiliser les PDO
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
8 oct. 2011 à 10:53
bonjour

je suis d'accord rinuom99 utilises post

j'ai fait un test chez moi ça fonctionne aussi
pour pdo vaut mieux preparer la requête question de sécurité

donc voilà avec mysql_connect la base
pour utilise pdo je te conseille les requête préparée
http://php.net/manual/fr/pdo.prepare.php

<!--

table bidon de test

CREATE TABLE IF NOT EXISTS `client` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `Code` varchar(32) NOT NULL,
  `Nom` varchar(30) NOT NULL,
  `Prenom` varchar(30) NOT NULL,
  `Adresse` varchar(30) NOT NULL,
  `Tel` varchar(30) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE= MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;

-->

<?php 
if(isset($_POST['Valider'])){
echo '';
print_r($_POST);
echo '

';

/*on se connecte et on nettoie*/

mysql_connect('localhost','root','');
mysql_select_db('base1');

/*anti injection + xss*/
foreach($_POST as $k => $v){
$v=mysql_real_escape_string(strip_tags($v));
$_POST[$k]=$v;
}


/*on extrait le tableau $_POST nettoyé */

extract($_POST);

$q= "insert into client values(
    NULL,
    '".$Code."',
    '".$Nom."',
    '".$Prenom."',
    '".$Adresse."',
    '".$Tel."'
    )
    ";



/*
$db new PDO("mysql:host localhost; dbname=mysql", "root", ""); 
$req = "insert into client values('".$_GET["Code"]."','".$_GET["Nom"]."','".$_GET["Prenom"]."','".$_GET["Adresse"]."','".$_GET["Tel"]."')";
$db->query($req); 
*/

    if(mysql_query($q)){
    echo "<html> Client ajouté avec succès
 </html>"; 
    $q =null;$_POST= array();
    }else{
    echo "<html> Client pas ajouté 
 </html>"; 
    }


}else{
//rien envoyer
}
?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv ="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
</head> 
 

<form action="" method="post" style=" table-layout:auto; border:solid; border-color: blue;" > 
Code :, ,

----

Nom :, ,

----

Prenom :, ,

----

Adresse:, ,

----

Tel:, ,

----

 
</form> 
 
</html>





Bonne programmation !
0
Rejoignez-nous