Lien formulaire/bdd mysql

Résolu
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009 - 9 févr. 2009 à 10:43
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009 - 20 févr. 2009 à 13:11
Bonjour a tous !!
Mon problème est le suivant:
J'ai un formulaire html avec des saisie possibles ( je fait dans un premier temps un controle de saise javascript ), ensuite je souhaite alimenter ma table avec les données saisies, le problème est que lorsque que je click sur mon submit "valider", mes saisie ne sont pas inserer dans ma base ( je précise que j'ai déjà réussi a résoudre ce problème dans une autre application et lorsque je compare les deux codes tout est bon, je ne voit aucune différence ). voici le code de ma page html qui appel ma page php ainsi que mon code php qui doit faire le lien avec ma bdd.

// appel de ma page php
<form name="form" method="post" action="Enregistrement.php" onsubmit="return valider();" >

//code de ma page php
<html>
<head>
<title>Enregistrement</title>
</head>

<?php
$connexion = mysql_connect("localhost","","");
if ($connexion)
{
//CONNEXION REUSSIE
mysql_select_connexion("incidents_editiques",$connexion);

//Allocation des variables
$NumEmploye=addslashes($_POST["NumEmploye"]);
$Nom=addslashes($_POST["Nom"]);
$Prenom=addslashes($_POST["Prenom"]);
$Fonction=($_POST["Fonction"]);

//REQUETE
$requete="insert into Employer values ('".$NumEmploye."','".$Nom."','".$Prenom."','".$Fonction."');";
$ok = mysql_query($requete,$connexion);
if($ok)
{
echo 'Youpi';
}
else
{
echo 'L\'Utilisateur rentré éxiste déjà !!';
}
mysql_close($connexion);
}
else
{
echo 'Problème à la connexion';
}
?>

</html>


quelqu'un peut-il me dire pourquoi l'insertion ne se fait pas?
ps: ma bas est stockées dans wampserveur 1.4 ( je suis en entreprise et obliger d'utiliser wampserver ).

172 réponses

cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
12 févr. 2009 à 13:52
Dans ton " if (isset($_POST['ajouter'])) ", déjà le isset sa veut dire quoi? j'ai pas trop saisi lhistoire de "" ou null enfin j'ai pas trop saisi le truc
et aussi ton ajouter, sa correspont a l'id de ton submit nn?
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
13 févr. 2009 à 04:45
Salut ..

Oui alors en effet ajouter correspond au name du bouton submit .. Bien vu ..

if (isset($_POST['ajouter'])) signifie...

Si j'ai appuyer sur le bouton qui à pour nom "ajouter", donc ton bouton submit, ensuite entre les acolade
{

}
 
Tu écrit ce que tu veu qu'il fasse, en l'occurence ici, tu mettra ta requete SQL INSERT ...

ensuite j'ai mis "else" qui qignifie "sinon"
et toujours entre acolade, tu écirt ce que tu veux qu'il fasse, en locurrence tu metx le formulaire ...

Ta compris le truc ???

Ou c'est que je t'ai parlé de "" ou null ???

Voila et pour la requete je me suis trompé, enleve les guillemet et les points comme je tavé dit ...

Liasse juste les simples quotes ..

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
13 févr. 2009 à 08:23
c'est bon jte remerci j'ai reussis a inserer un employer dans ma table, sa fonctionne enfin merci.

maintenant jvai gerer la midification ou la suppression d'un employer

merci pour l'aide
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
13 févr. 2009 à 08:49
De rien, chui content k'sa marche :)

Si ta un souci hésite pas .. Y me reste une semaine de stage apré jseré plus là lool !!!

Mais si tu comprends ske ta fé c impeccable ..

[ 'Tu trouveras toujours plus fort que toi' ]
0

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

Posez votre question
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
13 févr. 2009 à 09:12
J'ai un pti probleme sur la modification d'un matérielvoisci comment fonctionne mon formulaire, j'ai une liste dé"roulant qui contient mes code de materiaux, lorsqu'on saisi un materiel sa alimente les champs de mon formulaire, puis enfin j'ai un bouton submit (modifier) qui après avoir fait les modification souhaiter les enregistre dans ma base.

mon probleme sur ce formulaire est que au lieu de modifier lors de l'appui sur mon bouton submit, il modifit lors de mon choix dans ma liste deroulante

==========================mon formulaire===============================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<?php
require_once('../connexion/connexion.php');
mysql_select_db($database,$db);
//déclaration requete sql pour liste déroulante
$liste=mysql_query("SELECT CodeMateriel FROM materiel order by 1");

//oncrée la requete
//on envoie la requete

$num="";
if ($_POST['lstcode'] != "")
{
$num=$_POST['lstcode'];
}
else
{
if (isset($_GET['num']))
{
$num = $_GET['num'];
$num = stripslashes('num');
}
}
if ($num != "")
{
$sql = "SELECT * FROM materiel WHERE CodeMateriel='".$num."'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);//on ferme la connexion a mysql mysql_close()
}
if ($_POST['lstcode'] != "")
{
$num = $_POST['lstcode'];
$sql = "SELECT * FROM materiel WHERE CodeMateriel='".$num."'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);//on ferme la connexion a mysql mysql_close()
}
else
{
if (isset($_GET['num']))
{
$num = $_GET['num'];
$num = stripslashes('num');
$sql = "SELECT * FROM materiel WHERE CodeMateriel='".$num."'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);//on ferme la connexion a mysql mysql_close()
}
}
?>
<title>Modification d'un matériel</title>
<meta http-equiv="Content-Type" content="text/html" />
<meta http-equiv="Content-ScriptType" content="text/javascript" />
<script type="text/javascript">
//<![CDATA[
function modifier()
{
var res
var valid = true;
//------------------------CodeMateriel-------------------------
if ( document.form.ldnCodeMateriel.value == "" )
{
res = ("Le code du matériel doit être renseigné !!"+"\n");
valid = false;
}
//----------------------------ldnNom----------------------------
if ( document.form.ldnNom.value == "" )
{
res += ("Le nom du matériel doit être renseigné !!"+"\n");
valid = false;
}
//----------------------------ldnTyp----------------------------
if (document.form.ldnTyp.value == "" )
{
res += ("Le type du matériel doit être renseigné !!"+"\n");
valid = false;
}
//----------------------------alert----------------------------
if ( valid == true )
{
alert("Félicitation, enregistrement réussi !!");
}
else
{
alert(res);
}
return valid;
}
//]]>
</script>
</head>

,
<center>Gestion des incidents éditiques
</center>



<hr color='#01796F'/>
<hr color='#01796F'/>
<form name="form" method="post" onsubmit="return modifier();" action="../connexion/ModificationMateriel.php";>

Modification d'un matériel


<hr/ color='#01796F'>

Formulaire de recherche :


Matériel rechercher :
<?php
echo '<SELECT name ="lstcode" onChange="this.form.submit();">'."\n";
echo '<option value="'.$num.'"selected>'.$num;
while ($ligne=mysql_fetch_row($liste))
{
echo'<option value="'.$ligne[0].'">'.$ligne[0];
echo'</option>'."\n";
}
echo'</select>'."\n";
?>
<center>
<small>Code matériel :</small>,
<small>"></small>,
<small></small>,

----

<small>Nom :</small>,
<small>"></small>,
<small></small>,

----

<small>Type :</small>,
<small>"></small>,
<small></small>



</center>


<hr color='#01796F'/>


<center>
<center></center>

</center>








<center>
[Acceuil.html Retour au menu]
</center>
</form>

</html>

========================voici mon .php (requete)=============================
<?php
require_once('connexion.php');
if ($db)
{
mysql_select_db($database,$db);

//allocation des variables
$codechoisi=$_POST['lstcode'];
$code=$_POST['ldnCodeMateriel'];
$nom=$_POST['ldnNom'];
$type=$_POST['ldnTyp'];

$query = "UPDATE materiel SET CodeMateriel='".$code."',Nom='".$nom."',Type='".$type."' WHERE CodeMateriel='".$codechoisi."'";
$result = mysql_query($query);
echo'Le matériel souhaiter a bien été modifier !!';
}
else
{
echo'Problème à la connexion';
}
?>
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
13 févr. 2009 à 11:58
if ($db)

{

mysql_select_db($database,$db);

 

c koi $db ????

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
13 févr. 2009 à 13:03
voici mon connexion.php
tu verra ce qu'est $db

<?php
//paramètres de la connexion
$hostname = "localhost"; //nom du serveur
$database = "incidents_editiques"; //nom de la base de données
$username = "root"; //nom d'utilisateur
$password = ""; //mot de passe
$db = mysql_connect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
?>
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 05:31
Salut ok .. Bah c pas mal ske ta fais, mais faut que jte dise un ptit truc ..

Je vois que t'as fais plusieur fois la meme requete ... c'est à dire :

si (ça = ça)
{
  faire requete 1
}
sinon
 {
    si (ço = ço)
    {
       faire requete 1
     }
 }

Bon tu sais que tu peux faire ca :

si ((ça=ça) OU ((ço=ço)) //Le OU tu le traduit en PHP par || ou bien par OR
{
    faire requete 1
}

Ou sinon tu peux aussi faire:

si ((ça=ça) ET ((ço=ço)) Le ET tu le traduite en php par && ou bien par AND

{

    faire requete 1

}

Et derniere petite chose tu peux aussi faire :

if (.......)
{
  ...
}
elseif (........)
{
  ....
}

Toi tu fesais un "else" et tu refaisai un "if" ...

Bon voila skil y avait à réparé koté syntaxe.. maintenant dans ton code c normal que ca fonctionné pas..

Déja tu as oublier de mettre un "name" à ton bouton submit ... Tu peux mettre name="modifier"

Et ensuite pour le php ta fé ce kil falé, c'est à dire, affecter les zones de texte à des variables et ta fais la bonne requete, sauf que tu ne l'as pas dit à quel moment réalisé la requete ... Tu dois mettre ..

if ($_POST['modifier'])
{
    require_once('connexion.php');

    if ($db)

   {

   mysql_select_db($database,$db);

   //allocation des variables

   $codechoisi=$_POST['lstcode'];

   $code=$_POST['ldnCodeMateriel'];

   $nom=$_POST['ldnNom'];

   $type=$_POST['ldnTyp'];

   $query = "UPDATE materiel SET CodeMateriel='$code ', Nom='$nom' , Type='$type' WHERE CodeMateriel='$codechoisi';";
   $result = mysql_query($query);

   echo 'Le matériel souhaiter a bien été modifier !!';

   }

   else

   {

   echo'Problème à la connexion';

   }

}

Voila et j'ai enlevé dans ta requete SQL les guillemets et les points.. Tu dois tout mettre entre de simples quotes c tout !!!

Voila je pense que j'tai dit pas mal de truc, si ta des kestion hésite pas ..

++
[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 08:36
ok je te remercis pour ta réponse une nouvelle fois precieuse ^^
toutefois j'ai encore un leger probleme avec ma liste deroulant ( surement dut au onChange="this.form.submit()) car comme l'indique ce bout de code, elle execute mon submit sur changement hors moi ske j veu c'est qu'elle aliment mes champs de mon formulaire
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 09:49
Ah tu veux ke lorsque tu choisissent un champs dans ta liste déroulante, ben tous les autre champs se remplissent c ca ???

Ben ca je sais pas si je sais faire, mais jpeux essayer ..

Di moi dabord si c bien ca okm ca jme lance pas dans un truc de fou pr rien lool!!

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 09:56
oui voila c'est sa losque je selectionne une valeur de ma liste deroulante, cela doit remplir automatiquement mon formulaire. je te remercis
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 10:00
enfete sa j'ai reussi a le faire sur ce formulaire la ùmais lorsaue je rajoute ma partie javascript cela ne fonctionne plus
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 10:15
Ah ok t'as déja réussi a faire que lorsque tu choisi, la liste déroulante tous les autre champs se remplissent ???

Ta fonction javascript te sert a koi ??

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 10:17
je suis sur un formulaire de modification donc ma fonction javascript me sert a contoler la syntaxe des mofication car il ne faut pas que l'utilisateur modifit nimorte comment il faut donc que je controle la syntaxe
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 10:25
C'est à dire ?? poru toi controler c koi ???

Il faut pas k'il entre des lettres si il faut mettre que des chiffres ?? c ca ???

Ensuite ??

Donne moi tous les truc ke controle ta fonction JS...

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 10:49
et bien enfete ma fonction javascript pour ce formulaire la controle simplement si les champs sont renseigner et si mon code materiel etst bien composer de 5 lettres et rien d'autre ni plus ni moin
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 11:48
Ben déja si tu veux vérifier à ce kil n'entre maximum 5 caractere g un ptit code très simple pr toi ;) !!!

Et pui euh pour vérifier si les champs sont remplis g un ptit code oci si tu veux, si le tien ne marche pas ...

[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 12:45
non jte remerci mais pour sa j'ai ce qu'il faut mon probleme est que lorsque je fait un choix dans ma liste deroulante (click) ai lieu d'alimenter les champs de mon formulaire il execute mon submit.
0
cs_Vins974 Messages postés 104 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 20 février 2009
16 févr. 2009 à 12:55
Ben comment ca il execute ton submit ??

C koi ton submit ??? Il fait koi encore ???

Ben je pense que c en rapport dans une de tes conditions if..

Tu dois surment avoir un :
if (tous_tes_champs_sont_rempli)
{
executer le submit
}

or tu dois mettre :
if (tous_tes_champs_sont_rempli et qu'on à appuyer sur le bouton submit)

{

executer le submit

}

Je pense que c ca, là jdoi y alé je revien demain.. Si ca marche pas post moi le code et jrearderai demain matin ;)

A++
[ 'Tu trouveras toujours plus fort que toi' ]
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
16 févr. 2009 à 13:36
ok tu sais jvai te filer le script de ma bdd, mon formulaire ainsi que mes script me permettant la liaison a ma base. comme sa tu pourra voir par toi meme ce qu'il ce passe je t'acherais de t'envoyer sa ce soir sur ton adresse hotmail sinon je t'enverrais sa ici demain. merci bonne soirée.
0
Rejoignez-nous