Bonjour,
Avant toutes choses meilleurs vœux pour cette nouvelle année.
Comme vous pouvez le deviner j'ai un problème avec mon code.
Je souhaite alimenter une liste déroulante via une une table mysql et ajax en utilisant la librairie prototype.
L'erreur que j'ai dans la console d'erreur firefox est une erreur de syntaxe que je n'arrive pas à déchiffrer.
Voici mon select
Mon script php pour récupérer les infos dans ma base de données SQl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?include "_debut.php";?> <script type="text/javascript" src="lib/prototype.js"></script> <script type="text/javascript" src="scripts/albums_ajax.js"></script> <div id="Content"> <h1>Albums</h1> <div class="block"> <form action="albums_ajax.php" method="post" enctype="multipart/form-data"> <table> <tr> <th>Selectionnez Votre Artiste</th> <td><select id="artistes" name="artistes" /></td> </tr> <tr> <th>Entrez L'Album</th> <td><input type="text" name="album" /></td> </tr> <tr> <th>Pochette Album</th> <td><input type="file" name="album_cover" size="50" /></td> </tr> <tr> <th>Année de Sortie</th> <td><input type="text" name="album_release_date" /></td> </tr> <tr> <th></th> <td><input type="submit" value="Valider" id="go" /></td> </tr> </table> </form> </div> </div> <?include "_fin.php";?>
Et mon javascript ou se trouve l'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?php include_once("connexion.php"); ?> <?php mysql_select_db($database, $base); $query_artists = "SELECT * FROM artists ORDER BY art_name ASC"; $artists = mysql_query($query_artists, $base) or die(mysql_error()); $row_artists = mysql_fetch_assoc($artists); $result = array(); ?> <?php do { $result[] = $row_artists; } while ($row_artists = mysql_fetch_object($artists)); echo '{"artists":'.json_encode($result).'}'; ?>
Je vous remercie d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 var getArtist = { response: null, init: function() { if ($('artistes')) { while ($('artistes').options.length > 0) { $('artistes').remove(0); } var opt = new Element('option'); opt.value = ""; opt.text = ""; try { $('artistes').add(opt, null); } catch(ex) { $('artistes').add(opt); } var url = 'getArtists.php'; new Ajax.Request(url, { method: "get", onSuccess: function(transport) { getArtist.response = transport.responseText.evalJSON(); getArtist.fillInArtistSelect(); } }); } }, fillInArtistSelect: function() { getArtist.response.artists.each(function(elt) { var opt = new Element('option'); opt.value = elt.art_id; opt.text = elt.art_name; try { $('artistes').add(opt, null); } catch(ex) { $('artistes').add(opt); } }), }, }; document.observe('dom:loaded', getArtist.init);
Partager