Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/06/2011, 20h53   #1
 
Femme rouna
Étudiant
Inscription : mai 2011
Messages : 26
Détails du profil
Informations personnelles :
Nom : Femme rouna
Localisation : Tunisie

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2011
Messages : 26
Points : -2
Points : -2
Par défaut valeurs de chekbox

salut!
j'ai 2 tables:table questions et table reponse : ou les posiblités de réponse de chaque question c'est a dire les valeurs de chekbox et la table etablissement_universitaire ou je vais enregistrer les réponses j'ai un problème au niveau de l'insertion je veux les valeurs de chekbox s'enregistrent dans la même colone j'ai essaie avec
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
session_start();
include('conection.php');
mysql_query("SET NAMES UTF8"); 
$sql = "SELECT id_question,type FROM question WHERE id_categorie='3' AND langue='Français' ORDER BY id_question ";
$req = mysql_query($sql) or die (mysql_error()); 
while( $data = mysql_fetch_row($req))
{
if ($data[1]=="choix unique") 
{
if(isset($_SESSION['question' . $data[0]]) )
 
$reponse_utilisateur[] = addslashes($_SESSION['question' . $data[0]]);
 
else 
$reponse_utilisateur[] ="Pas de reponse";
}
elseif ($data[1]=="Multichoix")
{
$sqlcheckbox="SELECT * FROM reponse WHERE id_question=".$data[0];
$check = mysql_query($sqlcheckbox)or die (mysql_error());
 
 
 
if (isset($_SESSION['question' . $data[0]])) 
{ 
 if(isset($_SESSION['question' . $data[0]])) { //sera vrai si au moins un moins un checkbox a été coché
 
	foreach($_SESSION['question' . $data[0]] as $chkbx) {
 
 
				  $reponse="/".$chkbx;
 
 
								$reponse_utilisateur[1] =$reponse.",".$reponse;
				  			}}
 
 
}
 
 
 
 
 
}
elseif ($data[1]=="champs texte")
{
 
if(isset($_SESSION['question' . $data[0]]) )
 
$reponse_utilisateur[] = addslashes($_SESSION['question' . $data[0]]);
 
 else 
$reponse_utilisateur[] ="Pas de reponse";
}
 
}
print_r($reponse_utilisateur);
include 'essai4.php';
// Définition du nom de la base de données et du nom de la table.
$nom_de_la_base_de_donnees = "navigateursweb";
$nom_de_la_table_a_interroger = "etablissement_universitaire";
// Connexion à la base de données.
$champ="";
$champs="";
include 'conection.php';
// APPEL DES FONCTIONS
// renvoi le nombre de champs
$nombredechamps = recup_nbchamps($nom_de_la_base_de_donnees,$nom_de_la_table_a_interroger);
// renvoi le nom des champs
$nomsdeschamps = recup_noms_champs($nom_de_la_base_de_donnees,$nom_de_la_table_a_interroger);
 
 
  $nombredechamps2=$nombredechamps-2;
$sql1 = "INSERT INTO etablissement_universitaire
 
VALUES 
(";
for($i=0;$i<=$nombredechamps-1;$i++)
{
$sql1.= "'$reponse_utilisateur[$i]',";
}
$sql1.= "'$reponse_utilisateur[$nombredechamps2]')";
 
mysql_query($sql1) or die(mysql_error());?>
j'ai des erreurs de type Notice: Undefined offset:
et les valeurs ne sont pas stockées a leurs places
Merci!
ronze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 22h05   #2
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
tu peux aussi concaténer ces deux valeurs et insérer cette variable finale dans ta base de données
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 22h19   #3
 
Femme rouna
Étudiant
Inscription : mai 2011
Messages : 26
Détails du profil
Informations personnelles :
Nom : Femme rouna
Localisation : Tunisie

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2011
Messages : 26
Points : -2
Points : -2
bsr
comment ça se faire j'ai po compris d'aprés mon code inclure la concaténation et rendre les valeurs stockes dans la même colonne
ronze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 20h04   #4
Invité de passage
 
Femme
Étudiant
Inscription : juin 2011
Messages : 28
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2011
Messages : 28
Points : 4
Points : 4
Je ne suis pas sûre d'avoir bien tout compris mais comme te l'a conseillé florianjoy54, tu peux faire une concaténation. Un truc du style :

Code :
1
2
3
4
5
6
7
<?php
	$reponses = "";
	for($i = 0; $i < count($reponse_utilisateur); $i++) {
		$reponses .= $reponse_utilisateur[$i];
	}
	mysql_query("INSERT INTO etablissement_universitaire VALUES('" . $reponses . "');");
?>
Tu vois un peu le principe ? Et sinon, ça n'a rien à voir mais je pense que tu devrais raccourcir tes noms de variables, ce serait peut-être plus facile pour toi de t'y retrouver
Weirdy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h40.


 
 
 
 
Partenaires

Hébergement Web