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 27/07/2011, 09h00   #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 Intégrer du PHP dans du javascript

Bonjour,

J'ai créé un menu déroulant en auto complétion en javascript.

Au début, j'avais saisi en "dure" la liste des items à mettre dans mon menu déroulant.

Mais, je souhaiterai que les items soient le contenu de ma table tadherents car des adhérents vont s'ajouter avec le temps et je ne souhaite pas modifier à chaque fois mon compte.

Le code que j'ai écrit ne fonctionne pas. Il m'indique "erreur ligne 14"

Si vous avez une idée ?

Merci par avance.

Avant j'avais ce code qui fonctionne très bien :

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
<HTML>
<HEAD>
<link rel="stylesheet" href="alice.css" type="text/css">
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery-ui-1.8.14.custom.min.js" type="text/javascript"></script>
<link rel="stylesheet" href="jquery-ui-1.8.14.custom.css" type="text/css">
</HEAD>
<Body>
<script type="text/javascript">
$(function()
		{
		var prenoms =
		[
			'alain',
			'agnès',
			'bernard',
			'bernadette'
		];
			$("#listeprenoms").autocomplete({
				source:prenoms
			});
		});
 
</script>
<div class="ui-widget">
<form action="test.php" method="GET">
<label for="listeprenoms">Prénoms : </label>
	<input id="listeprenoms">
</form>
</div>	
</Body>
 
</HTML>
Et à présent j'ai ce code :

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
<HTML>
<HEAD>
<link rel="stylesheet" href="alice.css" type="text/css">
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery-ui-1.8.14.custom.min.js" type="text/javascript"></script>
<link rel="stylesheet" href="jquery-ui-1.8.14.custom.css" type="text/css">
</HEAD>
<Body>
<script type="text/javascript">
$(function()
		{
		var prenoms = new array()
		[
			<?php
//recherche dans la table
include("connexion.php");
$sql = "SELECT nom FROM tadherents";
$query=mysql_query($sql);
$num=mysql_num_rows($query);
//boucle sur la table
For($i=0;$i<$num;$i++)
{
  $nom=mysql_result($query,$i,'nom');
 
}
?>
		];
			$("#listeprenoms").autocomplete({
				source:prenoms
			});
		});
 
</script>
<div class="ui-widget">
<form action="test.php" method="GET">
<label for="listeprenoms">Prénoms : </label>
	<input id="listeprenoms">
</form>
</div>	
</Body>
 
</HTML>
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 09h15   #2
Membre Expert
 
Avatar de ska_root
 
Homme
Développeur informatique
Inscription : août 2005
Messages : 1 179
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Service public

Informations forums :
Inscription : août 2005
Messages : 1 179
Points : 1 580
Points : 1 580
Bonjour,

tu ne fais rien avec la variable $nom, il faut l'écrire et ajouter des quotes et une virgule dans ta boucle for
d'autre part tu ne fais pas afficher d'éventuelles erreurs mysql, ton problème vient peut-être de là aussi.
Code :
$query=mysql_query($sql) or die(mysql_error());
__________________
http://cdemarche.developpez.com/

Tu as la réponse à ta question ? N'oublies pas le petit en bas à gauche de ton message...
ska_root est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 09h30   #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 pour ta réponse.

Cela fonctionne mieux, mais maintenant j'ai la liste un nouveau message d'erreur qui me donne la liste des contacts (dupont, durant, etc...) est qui me dit "est indéfini".

J'ai copié ton code pour séparer les noms par une , mais cela ne fonctionne pas. Du coup, j'ai simplifié en saisisant echo $nom juste pour tester.

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
<script type="text/javascript">
$(function()
		{
		var prenoms = 
		[
			<?php
//recherche dans la table
include("connexion.php");
$sql = "SELECT nom FROM tadherents";
$query=mysql_query($sql) or die(mysql_error());
$num=mysql_num_rows($query);
//boucle sur la table
For($i=0;$i<$num;$i++)
{
  $nom=mysql_result($query,$i,'nom');
  echo $nom;
 
}
?>
		];
			$("#listeprenoms").autocomplete({
				source:prenoms
			});
		});
 
</script>
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 11h08   #4
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
J'ai trouvé la solution grâce à ce tuto en vidéo :

Ca fonctionne parfaitement bien !
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h09.


 
 
 
 
Partenaires

Hébergement Web