Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
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 02/08/2011, 12h44   #1
Candidat au titre de Membre du Club
 
Homme Stéphane
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 13
Points : 13
Par défaut Problème menu déroulant

Bonjour,
J'ai une liste de contact avec NOM - PRENOM - CATEGORIE. La catégorie est un menu déroulant qui va chercher les valeurs dans une table : Ami(e) - Famille - Professionnel. Je souhaiterai que lorsque l'utilisateur change de catégorie, ma table se mette à jour automatique mais sans bouton SUBMIT. J'ai donc utilisé un Script.
Mon souci est que lorsque je clique, j'ai le message suivant : "Cet objet ne gère pas cette propriété ligne 6".
Ce qui m'étonne si je change mon script, par exemple juste une alert, ça fonctionne !
Je pense que le souci vient de mon PHP. Merci pour votre aide.

Citation:
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
<html>
<head>
<script>
function test()
{
document.nom.submit();
}
</script>
</head>
<body>
<?php
include("../connexion.php");
include("menu.php");
$sql = "select * from tadherents, tcontacts  where (idmembrep='$vid' and idadherent=idmembref and accepte='oui') or (idmembref='$vid' and idadherent=idmembrep and accepte='oui' )";
$compte="select * from tadherents, tcontacts where (idmembrep='$vid' and idadherent=idmembref and accepte='oui') or (idmembref='$vid' and idadherent=idmembrep and accepte='oui')";
$result = mysql_query($sql); 
$result2=mysql_query($compte);
$vtotal = mysql_num_rows($result2); 
?>
 
<TABLE align=center class="toprow">
<caption><font size=4 color='#006BAC'>Mes contacts<?php if ($vtotal>0){echo "($vtotal)";}?></font>
<TR>
<TD width=100>Nom</TD>
<TD width=100>Prénom</TD>
<TD width=100>Photo</TD>
<TD width=100>Catégorie</TD>
</TR> 
<?php 
while($vligne = mysql_fetch_array($result)) 
{
	$vcategorie = $vligne['idcatp'];
?>
 
 
<TR>
<TD>
<?php 
$SQL = "SELECT * FROM tcategories_contacts";
$res = mysql_query($SQL);
?>
<form name="nom" action="test.php">
<select onclick="test()">
<?php 
while($val=mysql_fetch_array($res))
{
if ($vcategorie==$val['idcategorie_contact'])
	{
	echo "<option selected value=".$val['idcategorie_contact'].">".$val['libcategorie_contact']."</option>\n";
	}
	else
	{
	echo "<option value=".$val['idcategorie_contact'].">".$val['libcategorie_contact']."</option>\n";
	}
}
?>
 
</select>
</form>
</TD>
 
 <?php } ?>
</TR>
 
 
 
 
 
 
</table>
</body>
</html>
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 12h54   #2
Rédacteur/Modérateur
 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 320
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 29
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 320
Points : 7 272
Points : 7 272
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Je sais pas si des whiles dans des whiles sont conseillés ?
__________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
QuickEvent Lite : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
______________________________________________________________________________________

La rubrique Mac - Les cours & tutoriels Mac - Critiques de Livres Mac
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 13h15   #3
Candidat au titre de Membre du Club
 
Homme Stéphane
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 13
Points : 13
Merci.

Il est vrai que j'en ai jamais vu...

Je vais tester avec un for.

Merci pour ton aide.
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 13h41   #4
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 773
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 773
Points : 2 332
Points : 2 332
Bonjour,

Il y un problème avec ta fonction javascript à mon avis. Ton select a pas de nom, donc ça change jamais en fait. Pourquoi ne pas mettre onChange="submit()" plutôt ?
FirePrawn est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 14h13   #5
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Bonjour,
plusieurs "while" imbriqués : où est le problème ? ca fonctionne très bien ! ...
Ici :
- le 1er while affiche les lignes de la table
- le 2ème, pour chaque ligne, affiche les option du "select".

Le message d'erreur concerne ta syntaxe javascript !
Code :
Cet objet ne gère pas cette propriété ligne 6
Il suffit de regarder ligne ... 6 !
on écrit :
Code :
document.forms["nom"].submit();
Actuellement, elle ne sert à rien, ta fonction test()

Mettre "onchange" sur le "select" serait plus judicieux.

A part ca ...
-> mets tes balise en minuscules :
<TR> => <tr>
<TD> => <td>
...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 14h36   #6
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Oups ! J'avais complètement zappé cette phrases (!!)
Citation:
Envoyé par smotte761 Voir le message
Je souhaiterai que lorsque l'utilisateur change de catégorie, ma table se mette à jour automatique mais sans bouton SUBMIT. J'ai donc utilisé un Script.
En fait ... il faut utiliser ... AJAX. Notamment : Web 2.0, allez plus loin avec AJAX et XMLHttpRequest

Peux-tu expliquer ce que tu veux dire ici :
Code :
lorsque l'utilisateur change de catégorie, ma table se mette à jour ...
Qu'est-ce qui doit se mettre à jour ??

[edit] J'ai beau relire et ré-écrire (!) ton code, et tes "explications", je ne comprends toujours pas très bien ce que tu veux faire ...
Le sais-tu toi-même ?
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
<?php
include('../connexion.php');
?>
<html>
<head>
	<script>
	function test(idcatp)
	{
		var idcatp; // c'est l'ID (de l'enregistrement + du formulaire)
		// ICI on veut faire quoi (?????)
	}
	</script>
</head>
<body>
<?php
include('menu.php');
?>
<?php
// requete : liste des contacts
$sql 	= "SELECT * FROM tadherents, tcontacts 
		WHERE (idmembrep='".$vid."' AND idadherent=idmembref AND accepte='oui') 
		OR (idmembref='".$vid."' AND idadherent=idmembrep AND accepte='oui');";
$result = mysql_query($sql); 
$vtotal = mysql_num_rows($result); 
?>
 
<table class="toprow">
	<caption style="font-size:14px; color:#006BAC;">Mes contacts<?php if ($vtotal>0){ echo ' ('.$vtotal.')'; } ?></caption>
<thead>
	<tr>
		<th style="width:100px;">Nom</th>
		<th style="width:100px;">Prénom</th>
		<th style="width:100px;">Photo</th>
		<th style="width:100px;">Catégorie</th>
	</tr> 
</thead>
<tbody>
<?php
// affichage des lignes de la table
while($vligne = mysql_fetch_array($result)) 
{
	$vcategorie = $vligne['idcatp'];
	// (=> on identifie le formulaire/la ligne/le contact grace a $vcategorie)
?>
	<tr>
		<td>
		<form name="nom[<?php echo $vcategorie; ?>]" action="test.php">
		<select onclick="test(<?php echo $vcategorie; ?>)">
<?php 	// requete : toutes les categories
		$SQL = "SELECT * FROM tcategories_contacts";
		$res = mysql_query($SQL);
		while($val=mysql_fetch_array($res))
		{
			$opt_sel = ($vcategorie==$val['idcategorie_contact'])? ' selected="selected"' : '';
?>			<option value="<?php echo $val['idcategorie_contact']; ?>"<?php echo $opt_sel; ?>><?php echo $val['libcategorie_contact']; ?></option>
<?php	} ?>
		</select>
		</form>
		</td>
	</tr>
<?php } ?>
</tbody>
</table>
</body>
 
</html>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 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 10h16.


 
 
 
 
Partenaires

Hébergement Web