Pb avec mis à jour d bouton d'option + check

Résolu
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005 - 8 juin 2005 à 16:58
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005 - 9 juin 2005 à 13:08
Bonjour, Je suis nouvelle sur le forum et je sui tt aussi novice en php.Je veins auprès de mes confrères et consoeurs developpeur demander de l'aide.

J'ai un formulaire sur lequel je traite les informations concernant les langues.En fait, je suis en plein dévéloppement d'un site sur les recrutement en php et je bocle.
Sur le formulaire, j'y est mise des cases à cocher puis des checkbox, là n'est pas le pb.
Le problème se trouve qd je dois faire l'enregistrement, en fait je veux que dans la table où je vais le faire le code de la langue également s'enregsitre ainsi que le reste des options que j'ai coché. Slmt c'est le cas, pcq quand je coche les 2 checkbox il y'a un message identique à ceci qui s'affiche et ds ma table je ne retrouve que le 1er acocher et je ne retrouve pas le code de ma langue.

le code est identique à ceci :
<? 
// CONNEXION A LA BASE DE DONNEES
include ("connexion_eurocall.php");
$id = MYSQL_CONNECT($host,$user,$pass);
mysql_select_db("$bdd"); 
echo "Connexion &#233;tablit avec la BD";  
//FIN DE CONNEXION


$degre_mait_lang=$_POST['degre_mait_lang'];
$mode_mait_lang=$_POST['mode_mait_lang'];
$Submit=$_POST['Submit'];
/*if($autre!="") {
 $intitule_dom=$autre;
 }*/
 if (isset($_POST['Submit'])) 
 if (isset($_POST['degre_mait_lang']))
 if (isset($_POST['mode_mait_lang']))
 if (is_array($_POST['mode_mait_lang']))


    { foreach($_POST['mode_mait_lang'] as $choix) 
      { echo "Choix utilisateur pour la ma&#238;trise de la langue est : ",$choix,"
";
        // $query= "SELECT code_langue FROM langue Where ";
       $sql="INSERT into parle(degre_mait_lang,mode_mait_lang) 
       VALUES('$degre_mait_lang','$choix')";
      // on ins&#232;re les informations du formulaire dans la table 
                // $execute = mysql_query($sql) or die(mysql_error()); 


     print('Ton information a &#233;t&#233; ajout&#233; correctement !!!.

'); 
     
// d&#233;connexion &#224; la base
    mysql_close();
 }
 }
?>

</html>


Le message est :
Connexion &#233;tablit avec la BDChoix utilisateur pour la ma&#238;trise de la langue est : Ecrit


Ton information a &#233;t&#233; ajout&#233; correctement !!!.


Choix utilisateur pour la ma&#238;trise de la langue est : Oral

Warning: mysql_query(): Acc&#232;s refus&#233; pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\program files\easyphp1-8\www\site_recrutemnt\ajout_connaissance_linguistique.php on line 36

Warning: mysql_query(): A link to the server could not be established in c:\program files\easyphp1-8\www\site_recrutemnt\ajout_connaissance_linguistique.php on line 36
Acc&#232;s refus&#233; pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON)


Merci de m'aider à résoudre ce pb

12 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
8 juin 2005 à 17:14
Hello,



tu fermes la connexion a ta base DANS ta boucle.

Il faut que tu la fermes hors de ta boucle...sinon voila ce qui se passe sur ton script, dans l'ordre :

- connexion a la base

- test formulaire

- recuperation des variables $_POST (pourquoi...?)

- test du tableau contenant les checkboxes

- foreach pour parcourir ce tableau. Dans cette boucle, tu fais :

- affichage des infos

- insertion dans la base

- on ferme la connexion...

- retour a la prochaine iteration de ta boucle

- affichage des infos

- insertion dans la bas...ah merde, elle est fermee,
et on ne l'a pas reouverte! Donc php t'insulte, c'est normal ;-)
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 juin 2005 à 11:50
Tu as ce que tu mets la qui s'affiche ? Tu dois avoir un probleme avec un guillemet quelquepart, juste avant ce qui s'affiche la.
3
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
8 juin 2005 à 18:37
Ben je viens juste de sortir la dernière instruction c'est à dire celle de la déconnexion à la bd; et les messages d'enregsitrement s'affiche c'est à dire ceux ci:


 
Choix utilisateur pour la ma&#238;trise de la langue est : Ecrit


Ton information a &#233;t&#233; ajout&#233; correctement !!!.


Choix utilisateur pour la ma&#238;trise de la langue est : Oral


Ton information a &#233;t&#233; ajout&#233; correctement !!!.




Mais il n'enregsitre que celui de la fin , c'est à dire :
Choix utilisateur pour la ma&#238;trise de la langue est : Ecrit


Je ne sais plus pourquoi !
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
8 juin 2005 à 18:43
Oui çà marche, en fait j'avais oublie d'activer ceci:
 $execute = mysql_query($sql) or die(mysql_error()); 

Slmt, je evux savoir comment je peux faire pour enregistrer le code de la langue qui vient d'être sélectionné. Ou dans ce cas, je ne met pas de langue par défaut ? Si c'est possible ?

Merci pour la réponse.
0

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

Posez votre question
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
8 juin 2005 à 18:47
J'ai oublié qqc, je souhaiterais aussi afficher les infos enregistrer sur le même formulaire juste en dessous de la sélection faite.

Je suis désolée de poster autant dequestion chacune à la suite de l'autre , c'est juste que je suis vraiment stressé et j'ai beosin d'aide .
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 juin 2005 à 10:29
Hello,



je n'ai pas compris ta 1ere question. L'enregistrer...c'est a dire ?



Quel est le probleme pour afficher les autres infos...?



Tu es tellement stressee que tes questions ne sont pas tres claires lol.
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
9 juin 2005 à 11:05
En fait le pb était que je ne pouvais pas bien effectuer l'insertion des données de mon formulaire, j'ai réussit pcq j'avais pas remarqué que je me déconnectait dans ma boucle while et par la suite j'avais désactivé l'exécution de ma requete.


Là n'est plus le pb, mon pb est mnt que je désire afficher les réponses de ma requete, c'est à dire de mon insertion juste en dessous des sélections à faire, de telle sorte que la personne qui cochera pourra avant de voir ce qu'elle a marqué et par la suite pouvoir modifier si c'est pas correcte.


Merci d'avance pour votre aide !!!
Car je dois terminer ce travaille d'ici 3 semaines et je suis très en retard.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 juin 2005 à 11:14
Puisque tu inseres, tu as toujours tes variables utilisees pour l'insertion, il te suffit donc de les afficher ?
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
9 juin 2005 à 11:38
Je viesn d'avoir un gros souci, qd j'esai d'insérer les données dasn la bd, il ne se passe + rien. POurtant jusq'à hier osir tt allait bien.
Il y'a ceci qui s'affiche, je ne sais pas pourquoi !

"; $sql= "INSERT into parle (code_langue,degre_mait_lang,mode_mait_lang) VALUES ('$code_langue','$degre_mait_lang','$choix')"; // on ins&#232;re les informations du formulaire dans la table mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); print(' 
Ton information a &#233;t&#233; ajout&#233; correctement !!!.

'); } } // d&#233;connexion &#224; la base mysql_close(); ?> 


2ème pb
En fait pour l'affichage en dessous sur le même formulaire des infos je n'y arrive pas. C'st pourquoi je demande de l'aide.
Mais si on peut traiter chaue pb l'une après l'autre !
Merci encore
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
9 juin 2005 à 12:13
Et ben je ne le trouve pas et le pire c'est que c'était comme çà avant et çà marchait très bien!

Voici le code de la page de traitement ajout_connaisance_linguistique.php
<?
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


                              
<? 
if ($_POST['code_langue'] == "Allemand") { $code_langue= 1; } 
else if ($_POST['code_langue']== "Anglais") {$code_langue= 2; }
  else if ($_POST['code_langue'] == "Arabe") { $code_langue= 3; }
   else if ($_POST['code_langue']=="Bulgare") { $code_langue=4; }
     else if  ($_POST['code_langue']=="Chinois") { $code_langue=5; }
       else if ($_POST['code_langue'] == "Croate") { $code_langue= 6; }
          else if ($_POST['code_langue']== "Danois") {$code_langue= 7; }
  
         else if ($_POST['code_langue']=="Espagnol") { $code_langue=8; }
        else if  ($_POST['code_langue']=="Finois") { $code_langue=9; }
        else if ($_POST['code_langue']=="Fran&#231;ais") { $code_langue=10;}
       else if ($_POST['code_langue']=="Grec") { $code_langue=12; }
      else if  ($_POST['code_langue']=="Hongrois") { $code_langue=13; }
     else if ($_POST['code_langue']=="Indien") { $code_langue=14; }
    else if  ($_POST['code_langue']=="Islandais") { $code_langue=15; }
   else if  ($_POST['code_langue']=="Italien") { $code_langue=16; }


// CONNEXION A LA BASE DE DONNEES
include ("connexion_eurocall.php");
$id = MYSQL_CONNECT($host,$user,$pass);
mysql_select_db("$bdd"); 
echo "Connexion &#233;tablit avec la BD";  
//FIN DE CONNEXION
$code_langue=$_POST['code_langue'];
$degre_mait_lang=$_POST['degre_mait_lang'];
$mode_mait_lang=$_POST['mode_mait_lang'];
$Submit=$_POST['Submit'];
/*if($autre!="") {
 $intitule_dom=$autre;
 }*/
if(isset($Submit)) {
if (isset($_POST['code_langue']))
// if (isset($_POST['degre_mait_lang']))
 if (is_array($_POST['mode_mait_lang']))
       { foreach($_POST['mode_mait_lang'] as $choix) 
         { echo ("Choix utilisateur pour la ma&#238;trise de la langue est : ",$choix,"
");
   
         $sql= ("INSERT into parle (code_langue,degre_mait_lang,mode_mait_lang) 
           VALUES ('$code_langue','$degre_mait_lang','$choix')");


             // on ins&#232;re les informations du formulaire dans la table 
                mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); 
     
      print('Ton information a &#233;t&#233; ajout&#233; correctement !!!.

');  
 }
      }
// d&#233;connexion &#224; la base
   mysql_close();
?>

</html>


Merci de pouvoir m'aidre à retrouver la code manquante
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
9 juin 2005 à 13:07
J'ai essayer de revoir, sans trouver la moindre faille.Alors j'ai tt arreté et qd j'ai redémarré le serveur, c'est revenu à la normal.
Sur ceu merci à pour ton assistance encore et encore. Alors i vous me demandez c'était dû à quoi je en saurè vous répondre
0
chardene_amour_de_freddy Messages postés 71 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 3 août 2005
9 juin 2005 à 13:08
Mnt je veux savoir comment je peux faire pour affaicher les résultats enregsitrer juste en dessous de la sélection après le bouton de validation.
0
Rejoignez-nous