Enregistrement dans la BD ne fonctionne pas

rodlake Messages postés 13 Date d'inscription lundi 27 février 2012 Statut Membre Dernière intervention 8 mai 2012 - 20 avril 2012 à 19:26
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 - 11 mai 2012 à 21:33
Bonjour

Cela fait plusieurs jours que je tente de résoudre un problème et toujours sans succès. J'ai un formulaire et lorsque je tente d'enregistrer les données dans la BD ça ne fonctionne pas. J'ai fait des test afin de voir si j'étais capable d'afficher la valeur des réponses du formulaire et certaines s,affichent d'autres pas.

Pour faciliter la compréhension....mon formulaire demande certaine infoas au début: Nom, affiche la date, demande no de référence et ensuite 29 questions avec des boutons radio.

Ce sont les infos du début que je suis incapable récupérer. Soit le nom , no de référence. Les réponses des 29 questions je crois sont ok car je suis capable de les faire afficher après avoir soumis le formulaire.

J'ai essayer de mettre de la couleur pour montrer les endoits problématiques mais ça ne semble pas fonctionner. J'ai donc indiquer dans le code les endroits.

Y a-t-il quelqu'un qui peut m,aider svp?

Merci




<?php 
include 'dbc.php';
page_protect();


?>
<html>
<head>
<title>Grille Écoute Permanent</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<link href="styles.css" rel="stylesheet" type="text/css">

<script type="text/javascript">
function valid(e){
for(var i=0;i<e.length;i++){
if(e[i].type=='radio'){
var r=e[e[i].name], q=true
for(var j=0;j<r.length;j++){
r[j].checked?q=false:null;
}
if(q){alert('SVP Veuillez sélectionner une réponse pour chaque question. Merci');return false}
}
}
}
</script>




</head>


<?php
/*********************** MYACCOUNT MENU ****************************/
if (isset($_SESSION['user_id'])) {?>

My Account

My Account

Settings

Logout 

Grille écoute PCU permanent 

You can add more links here for users

<?php }
if (checkAdmin()) {
/*******************************MYACCOUNT END**************************/
?>
Admin CP 

<?php } ?>,
Utilisateur: <?php echo $_SESSION['user_name'];?>

<?php
if (isset($_GET['msg'])) {
echo "
$_GET[msg]
";
}

?>
Grille Écoute PCU Permanent

********Ici le form qui me pose problème*************

<form method="post" action="Grille ecoute Permanent.php" name="nom_pcu" id="nom_pcu">
Selectionnez un PCU:      <?php include 'liste_deroulante_pcu.php' ;?> </form> Date:    <?php $date=date("Y/m/d") ; echo "$date";  ?>

<form name="no_carte_appel" action="Grille ecoute Permanent.php" method="post" > No carte d'appel:  <?php $no_carte_appel="no_carte_appel";?>
</form>

*****************Fin du FORM*************

TRAITEMENT TÉLÉPHONIQUE 

<?php
/*******************************SECTION QUESTIONS TRAITEMENT TÉLÉPHONIQUE**********************/
include 'Questions/question_1.php';

include 'Questions/question_2.php';

include 'Questions/question_3.php';

include 'Questions/question_4.php';

include 'Questions/question_5.php';

include 'Questions/question_6.php';

include 'Questions/question_7.php';

include 'Questions/question_8.php';

include 'Questions/question_9.php';

include 'Questions/question_10.php';

include 'Questions/question_11.php';

include 'Questions/question_12.php';

include 'Questions/question_13.php';

include 'Questions/question_14.php';

?>

SERVICE À LA CLIENTÈLE 

<?php
/*******************************SECTION QUESTIONS SERVICE À LA CLIENTÈLE**********************/

include 'Questions/question_15.php';

include 'Questions/question_16.php';

include 'Questions/question_17.php';

include 'Questions/question_18.php';

?>

RÉDACTION DE LA CARTE D'APPEL 

<?php
/*******************************SECTION QUESTIONS RÉDACTION DE LA CARTE D'APPEL**********************/

include 'Questions/question_19.php';

include 'Questions/question_20.php';

include 'Questions/question_21.php';

include 'Questions/question_22.php';

include 'Questions/question_23.php';

include 'Questions/question_24.php';

include 'Questions/question_25.php';

include 'Questions/question_26.php';

include 'Questions/question_27.php';

include 'Questions/question_28.php';

include 'Questions/question_29.php';

?>

Remarques:

<textarea name="remarques" cols=100 rows=10 > </textarea>

<?php

/*******************TEST POUR CONNAITRE VALEUR VARIALBLE********/

if (isset($question_3)) {

echo "$question_3";
}

?>

<?php
if (isset ($_post['doSubmit'])) {

$no_carte_appel=$_POST['no_carte_appel'];

echo "$no_carte_appel";	}

/*******************FIN TEST*********************************/

?>

</form>

<?php
if($_POST['doSubmit'] == 'create')

mysql_query("INSERT INTO grille_ecoute (`non_pcu`,`user_name`,`$date`,`no_carte_appel`,`$question_1`,`$question_1`,`$question_2`,`$question_3`,`$question_4`,
`$question_5`,`$question_6`,`$question_7`,`$question_8`,`$question_9`,`$question_10`,`$question_11`,`$question_12`,`$question_13`,`$question_14`,`$question_15`,
`$question_16`,`$question_17`,`$question_18`,`$question_19`,`$question_20`,`$question_21`,`$question_22`,`$question_23`,`$question_24`,`$question_25`,`$question_26`,
`$question_27`,`$question_28`,`$question_29`,)
VALUES ('$post[nom_pcu]','$post[user_name]','$post[no_carte_appel]','$date','$question_1','$question_2','$question_3','$question_4','$question_5','$question_6',
'$question_7','$question_8','$question_9','$question_10','$question_11','$question_12','$question_13','$question_14','$question_15','$question_16','$question_17',
'$question_18','$question_19','$question_20','$question_21','$question_22','$question_23','$question_24','$question_25','$question_26','$question_27','$question_28',
'$question_29',)
") or die(mysql_error());

?>



</html>

5 réponses

theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
24 avril 2012 à 14:28
Salut,

pour les supers POST la syntaxe est $_POST['nom_de_input'],
tien j'ai ré-écris rapidement j’espère que c'est bon :

<?php
$sql =     
'INSERT INTO grille_ecoute SET
non_pcu = "'.$_POST['nom_pcu'].'", 
user_name= "'.$_POST['user_name'].'", 
date = "'.$date.'", 
no_carte_appel = "'.$_POST['no_carte_appel'].'", 
question_1 = "'.$question_1.'", 
question_2 = "'.$question_2.'",
question_3 = "'.$question_3.'",
question_4 = "'.$question_4.'",
question_5 = "'.$question_5.'",
question_6 = "'.$question_7.'",
question_8 = "'.$question_8.'",
question_9 = "'.$question_9.'", 
question_10 = "'.$question_10.'",
question_11 = "'.$question_11.'",
question_12 = "'.$question_12.'",
question_13 = "'.$question_13.'",
question_14 = "'.$question_14.'",
question_15 = "'.$question_15.'",
question_16 = "'.$question_16.'", 
question_17 = "'.$question_17.'",
question_18 = "'.$question_18.'",
question_19 = "'.$question_19.'",
question_20 = "'.$question_20.'",
question_11 = "'.$question_21.'",
question_12 = "'.$question_22.'",
question_13 = "'.$question_23.'",
question_14 = "'.$question_24.'",
question_15 = "'.$question_25.'",
question_16 = "'.$question_26.'", 
question_17 = "'.$question_27.'",
question_18 = "'.$question_28.'",
question_19 = "'.$question_29.'"'		
;

$req = mysql_query($sql) or die(mysql_error());
?>


++

-La constante d'une personne est la variable d'une autre.
-Il y a deux manières d'écrire des programmes sans erreurs. Seule la troisième marche
-Tout programme a (au moins) deux buts : celui pour lequel il a été écrit, et celui pour lequel il ne l'a pas
0
rodlake Messages postés 13 Date d'inscription lundi 27 février 2012 Statut Membre Dernière intervention 8 mai 2012
24 avril 2012 à 22:37
Bonjour Theflayer
merci pour ta réponse....j'ai essayé plusieurs trucs depuis mon dernier post et voici ce qui marche a moitié....je m'explique:
Nom_pcu...user_name...no_carte_appel ne s'enregistrent pas dans la bd or maintenant toutes les réponses des questions 1 à 29 s,enregistrent. Je tente toujours de trouver une solution...voici la portion de code modifiée.

Merci !!!
<?php
  if($_POST['doSubmit'] == 'Create')


mysql_query("INSERT INTO grille_ecoute_pcu_permanent (`user_name`,`nom_pcu`,`no_carte_appel`,`question_1`,`question_2`,`question_3`,`question_4`,
`question_5`,`question_6`,`question_7`,`question_8`,`question_9`,`question_10`,`question_11`,`question_12`,`question_13`,`question_14`,`question_15`,
`question_16`,`question_17`,`question_18`,`question_19`,`question_20`,`question_21`,`question_22`,`question_23`,`question_24`,`question_25`,`question_26`,
`question_27`,`question_28`,`question_29`)
 VALUES ('user_name','nom_pcu','no_carte_appel','$question_1','$question_2','$question_3','$question_4','$question_5','$question_6',
 '$question_7','$question_8','$question_9','$question_10','$question_11','$question_12','$question_13','$question_14','$question_15','$question_16','$question_17',
 '$question_18','$question_19','$question_20','$question_21','$question_22','$question_23','$question_24','$question_25','$question_26','$question_27','$question_28',
 '$question_29')
 ") or die(mysql_error()); 
0
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
26 avril 2012 à 11:44
Salut, désolé je met un peu de temps a répondre je n'ai pas beaucoup de temps en ce moment.

de $question1 à $question29 tu enregistrer des variables, mais pas les 3 premiers.

ici :

VALUES('user_name','nom_pcu','no_carte_appel'...)

Tu entre dans ta bdd pour user_name la valeur 'user_name' pour nom_pcu la valeur 'nom_pcu'.

dans ton premier poste tu avais un formulaire pour ces champs, donc soit tu les a enregistrer comme ça :

$nom_pcu = $_POST['nom_pcu'];
dans ce cas n'oublie pas le '$'

ou tu les à pas enregistrés et donc tu dois mettre VALUES('".$_POST['user_name']."','".$_POST['nom_pcu'].".............')"

perso je trouve que quand il y a beaucoup de champs l'insertion avec SET est plus simple et plus lisible. (voir post précédent).

tien moi au courant , bon courage.


-La constante d'une personne est la variable d'une autre.
-Il y a deux manières d'écrire des programmes sans erreurs. Seule la troisième marche
-Tout programme a (au moins) deux buts : celui pour lequel il a été écrit, et celui pour lequel il ne l'a pas
0
rodlake Messages postés 13 Date d'inscription lundi 27 février 2012 Statut Membre Dernière intervention 8 mai 2012
8 mai 2012 à 10:12
Je continue ce post car je cherche toujours une solution. Il ya eu une evolution positive mais ça ne fonctionne toujours pas complètement et je m,explique.

Le user_name s,enregistre maintenant dans la BD. Le nom_pcu qui provient d,une liste déroulante ne s'enregistre pas correctement. Ça enregistre le dernier nom de la liste malgré le fait que ce ne soit pas celui sélectionné. Pour ce qui est no_carte_appel ça ne s,enregistre pas.
J'ai fait plein de recherches j,ai suivi les conseils de Theflayer et j'ai essayé des millions de trucs mais j,ai pas encore réussi. Je poste le code de nouveau avec seulement les portions concernées....Merci encore une fois.

Le include de la liste déroulante:
<form> 
   <select name="nom_pcu_form" method="post">
<?php
$SQL = "SELECT * FROM pcu ORDER BY nom_pcu";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) 
{
$nom=$val["nom_pcu"];
$prenom=$val["prenom_pcu"];
$nom_complet = $prenom . $nom;
echo "<option>".$val["nom_pcu"].", ".$val["prenom_pcu"]."</option>\n";

$nom_pcu_form="".$val["nom_pcu"].", ".$val["prenom_pcu"].""; 
}
?>
</select>
</form>



La portion du formulaire qui pose problème....

<form name="form2" method="post" action="Grille ecoute Permanent.php">
              
                Nom :
                 <?php include 'liste_deroulante_pcu.php' ;?> 
no carte appel
                
                


<?php  echo date("Y/m/d"); ?> 

 </form>




Et la portion enregistrement dans la BD:

      

    </form>
    
<?php
  if($_POST['doSubmit'] == 'Create')


  
  
  
mysql_query("INSERT INTO grille_ecoute_pcu_permanent (`user_name`,`nom_pcu`,`no_carte_appel`,`question_1`,`question_2`,`question_3`,`question_4`,
`question_5`,`question_6`,`question_7`,`question_8`,`question_9`,`question_10`,`question_11`,`question_12`,`question_13`,`question_14`,`question_15`,
`question_16`,`question_17`,`question_18`,`question_19`,`question_20`,`question_21`,`question_22`,`question_23`,`question_24`,`question_25`,`question_26`,
`question_27`,`question_28`,`question_29`)
 VALUES ('$user_name','$nom_pcu_form','$no_carte_appel','$question_1','$question_2','$question_3','$question_4','$question_5','$question_6',
 '$question_7','$question_8','$question_9','$question_10','$question_11','$question_12','$question_13','$question_14','$question_15','$question_16','$question_17',
 '$question_18','$question_19','$question_20','$question_21','$question_22','$question_23','$question_24','$question_25','$question_26','$question_27','$question_28',
 '$question_29')
 ") or die(mysql_error()); 
0

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

Posez votre question
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
11 mai 2012 à 21:33

<?php
include('dbc.php');
$date = date("Y.m.d");

if(isset($_POST['doSubmit']))
{
Base();
$sql = 	'INSERT INTO grille_ecoute SET
nom_pcu = "'.$_POST['nom_pcu'].'", 
user_name= "'.$_POST['user_name'].'", 
date = "'.$date.'", 
no_carte_appel = "'.$_POST['no_carte_appel'].'", 
question_1 = "'.$_POST['question_1'].'", 
question_2 = "'.$_POST['question_2'].'",
question_3 = "'.$_POST['question_3'].'",
question_4 = "'.$_POST['question_4'].'",
question_5 = "'.$_POST['question_5'].'",
question_6 = "'.$_POST['question_7'].'",
question_8 = "'.$_POST['question_8'].'",
question_9 = "'.$_POST['question_9'].'"'; 

$req = mysql_query($sql) or die(mysql_error());
mysql_close();
}
else
{
echo'
<html>
<head>
<title>Grille Écoute Permanent</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="styles.css" rel="stylesheet" type="text/css">
</head>	



<form action="questionnaire.php" method="POST">
User : 


Selectionnez un PCU: '; 
include 'liste_deroulante_pcu.php';

echo'					
Date : '.$date.' 


No Carte d\'Appel : 

';

include 'Questions/question_1.php';
include 'Questions/question_2.php';
include 'Questions/question_3.php';
include 'Questions/question_4.php';
include 'Questions/question_5.php';
include 'Questions/question_6.php';
include 'Questions/question_7.php';
include 'Questions/question_8.php';
include 'Questions/question_9.php';

echo'

</form>


</html>';
}		
?>		




Tien comme cela , ça fonctionne, adapte le pour toi.
Tien moi au courant.

-La constante d'une personne est la variable d'une autre.
-Il y a deux manières d'écrire des programmes sans erreurs. Seule la troisième marche
-Tout programme a (au moins) deux buts : celui pour lequel il a été écrit, et celui pour lequel il ne l'a pas
0
Rejoignez-nous