Probleme php avec select
Résolu/Fermé
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
-
22 août 2007 à 10:44
ritepac Messages postés 14 Date d'inscription mercredi 22 août 2007 Statut Membre Dernière intervention 22 août 2007 - 22 août 2007 à 13:32
ritepac Messages postés 14 Date d'inscription mercredi 22 août 2007 Statut Membre Dernière intervention 22 août 2007 - 22 août 2007 à 13:32
A voir également:
- Probleme php avec select
- Easy php - Télécharger - Divers Web & Internet
- Retour a la ligne php ✓ - Forum PHP
- Expert php pinterest - Télécharger - Langages
- Reboot and select proper boot device or insert boot media in selected boot device and press a key ✓ - Forum Windows 10
- Reboot and select proper boot device ✓ - Forum PC portable
22 réponses
Mcmurphy
Messages postés
115
Date d'inscription
vendredi 6 juillet 2007
Statut
Membre
Dernière intervention
28 août 2008
7
22 août 2007 à 10:50
22 août 2007 à 10:50
Désolé mais je n'est pas comprit ton probléme!!!
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 11:42
22 août 2007 à 11:42
Non, il n'y a pas de raison...
C'est bizarre...
Si tu affiches le code source de ta page, comment est défini ce <select> ? Surtout, comment sont placés les selected="" ?
Sinon, tu peux essayer de placer, à la place de $data[nom].' '.$data[prenom], une aide pour débuguer (de façon temporaire bien sûr), et mettre en fait : $id_auteur . ' / ' . $data['id_auteur'] comme ça tu verras directement où est le problème !
Xavier
(PS : pour mettre un code, ce n'est pas [code], mais $lt;code> qu'il faut utiliser :) )
C'est bizarre...
Si tu affiches le code source de ta page, comment est défini ce <select> ? Surtout, comment sont placés les selected="" ?
Sinon, tu peux essayer de placer, à la place de $data[nom].' '.$data[prenom], une aide pour débuguer (de façon temporaire bien sûr), et mettre en fait : $id_auteur . ' / ' . $data['id_auteur'] comme ça tu verras directement où est le problème !
Xavier
(PS : pour mettre un code, ce n'est pas [code], mais $lt;code> qu'il faut utiliser :) )
wenijah
Messages postés
72
Date d'inscription
mercredi 20 juin 2007
Statut
Membre
Dernière intervention
26 janvier 2012
6
22 août 2007 à 11:50
22 août 2007 à 11:50
Après revu du code de reivax, il ne devrait y avoir aucun problème :/
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 11:51
22 août 2007 à 11:51
A la reflexion, je trouve ta requête SQL étrange.
As-tu essayé de l'exécuter dans phpmyadmin par exemple, ou ailleurs, pour voir exactement quels sont les résultats qu'elle renvoit ? Il me semble que tu fais un produit cartésien et non une jointure...
As-tu essayé de l'exécuter dans phpmyadmin par exemple, ou ailleurs, pour voir exactement quels sont les résultats qu'elle renvoit ? Il me semble que tu fais un produit cartésien et non une jointure...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 11:59
22 août 2007 à 11:59
mmmh.... d'après toi il faut que je fass la jointure juste avant la boucle (quand je récupère les variables) ?
du style pour categories :
<?php
echo '<select size=1 name="id_cat">'."\n";
$result = mysql_query("SELECT fiches_infos.id_cat, fiches_categories.id_cat, fiches_categories.categorie FROM fiches_categories, fiches_infos" );
while($data = mysql_fetch_array($result))
{
if ($data['id_cat'] == $id_cat)
$selected = "selected";
else
$selected = "";
echo '<option value="'.$data['id_cat'].'" selected="'.$selected.'">'.$data['categorie'];
echo '</option>'."\n";
}
echo '</select>'."\n";
?>
et donc pour la balise selected, c'est bien comme ci-dessus ?
du style pour categories :
<?php
echo '<select size=1 name="id_cat">'."\n";
$result = mysql_query("SELECT fiches_infos.id_cat, fiches_categories.id_cat, fiches_categories.categorie FROM fiches_categories, fiches_infos" );
while($data = mysql_fetch_array($result))
{
if ($data['id_cat'] == $id_cat)
$selected = "selected";
else
$selected = "";
echo '<option value="'.$data['id_cat'].'" selected="'.$selected.'">'.$data['categorie'];
echo '</option>'."\n";
}
echo '</select>'."\n";
?>
et donc pour la balise selected, c'est bien comme ci-dessus ?
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 12:02
22 août 2007 à 12:02
Non, ce n'est pas ça.
Je pense que c'est ta requête qui ne va pas.
Déjà, dans ta description des tables, je ne vois pas de champ "id". Alors que dans ton where, tu l'utilises...
Essaie de faire un test de ta requête et d'afficher directement le résultat, pour voir ce que ça donne !
Je pense que c'est ta requête qui ne va pas.
Déjà, dans ta description des tables, je ne vois pas de champ "id". Alors que dans ton where, tu l'utilises...
Essaie de faire un test de ta requête et d'afficher directement le résultat, pour voir ce que ça donne !
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 12:09
22 août 2007 à 12:09
Non, c'est celle-là :
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=\'' . $_GET['modifier_fiche']
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=\'' . $_GET['modifier_fiche']
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 12:09
22 août 2007 à 12:09
alors j'ai essayé cette requete-ci dans SQL :
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=2
Il me sort le même enregsitrement pour tous les niveaux, tous les auteurs et toute les catégories en fait. Donc, il faut que je fasse cela ?
SELECT fiches_infos.id_cat, fiches_infos.id_niveau, fiches_infos.id_auteur, fiches_auteur.id_auteur, fiches_auteur.nom, fiches_auteur.prenom, fiches_niveau.id_niveau, fiches_niveau.niveau, fiches_categories.id_cat, fiches_categories.categorie FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=2
Pour info, l'id est dans ma table fiches_infos, création d'un ID unique lors de la création d'une fiche.
patrice
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=2
Il me sort le même enregsitrement pour tous les niveaux, tous les auteurs et toute les catégories en fait. Donc, il faut que je fasse cela ?
SELECT fiches_infos.id_cat, fiches_infos.id_niveau, fiches_infos.id_auteur, fiches_auteur.id_auteur, fiches_auteur.nom, fiches_auteur.prenom, fiches_niveau.id_niveau, fiches_niveau.niveau, fiches_categories.id_cat, fiches_categories.categorie FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=2
Pour info, l'id est dans ma table fiches_infos, création d'un ID unique lors de la création d'une fiche.
patrice
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 10:57
22 août 2007 à 10:57
Bonjour,
Le problème se situe dans ce bout de code :
Voilà ce que je te propose :
Xavier
Le problème se situe dans ce bout de code :
<?php echo '<select size=1 name="id_cat">'."\n"; $result = mysql_query("SELECT id_cat, categorie FROM fiches_categories" ); while($data = mysql_fetch_array($result)) { echo '<option value="'.$data['id_cat'].'" selected>'.$data['categorie']; echo '</option>'."\n"; } echo '</select>'."\n"; ?>Tu places "selected" sur TOUS les <option>, alors qu'il ne faudrait le mettre que sur celui qui va bien (donc sur celui qui est identifié par $id_cat).
Voilà ce que je te propose :
<?php echo '<select size=1 name="id_cat">'."\n"; $result = mysql_query("SELECT id_cat, categorie FROM fiches_categories" ); while($data = mysql_fetch_array($result)) { if ($data['id_cat'] == $id_cat) $selected = "selected"; else $selected = ""; echo '<option value="'.$data['id_cat'].'" '.$selected.'>'.$data['categorie']; echo '</option>'."\n"; } echo '</select>'."\n"; ?>Comme ça, la chaine "selected" ne sera écrite que pour le <option> qui vérifie $data['id_cat'] == $id_cat.
Xavier
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 10:57
22 août 2007 à 10:57
Alors je récapépète :
Mon soucis est que quand je modifie une fiche, les <select> ne prennent pas par défaut la valeur de la variable transmise.
COncretement :
j'ai une table avec des catégories :
1. guitare
2. batterie
3. saxophone
J'ai une fiche qui appartient à la catégorie : batterie.
Quand je modifie cette fiche, le <select> des catégories affiche par défaut la première valeur qui est dans mon cas : guitare et non batterie. Du coup, à chaque fois que je modifie une fiche, il faut que je resélectionne la catégorie. Donc j'aimerais que quand je clique sur modifier, sur la page rediger_fiche.php, il me sélectionne la catégorie à laquelle appartient cette fiche. Cela marche pour un titre, une description mais les <select> ne veulent pas récupérer la valeur.
Est-ce plu clair ?
Mici d'avance :)
Mon soucis est que quand je modifie une fiche, les <select> ne prennent pas par défaut la valeur de la variable transmise.
COncretement :
j'ai une table avec des catégories :
1. guitare
2. batterie
3. saxophone
J'ai une fiche qui appartient à la catégorie : batterie.
Quand je modifie cette fiche, le <select> des catégories affiche par défaut la première valeur qui est dans mon cas : guitare et non batterie. Du coup, à chaque fois que je modifie une fiche, il faut que je resélectionne la catégorie. Donc j'aimerais que quand je clique sur modifier, sur la page rediger_fiche.php, il me sélectionne la catégorie à laquelle appartient cette fiche. Cela marche pour un titre, une description mais les <select> ne veulent pas récupérer la valeur.
Est-ce plu clair ?
Mici d'avance :)
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 10:58
22 août 2007 à 10:58
(déjà répondu ^^
Je le redis parce que tu n'as peut-être pas vu qu'on a posté presque en même temps)
Je le redis parce que tu n'as peut-être pas vu qu'on a posté presque en même temps)
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 10:59
22 août 2007 à 10:59
mici reivax je test ton code :) et reviens aux nouvelles :)
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 11:35
22 août 2007 à 11:35
re :)
Alors ton code fonctionne presque bien :
En fait si je le mets tel quel il ne change rien, il faut que je rajoute :
echo '<option value="'.$data['id_niveau'].'" selected="'.$selected.'">'.$data['niveau'];
selected = dans la valeur.
Ca marche pour deux de mes 3 <select> mais la troisième pas moyen :
[code]
<?php
echo '<select size=1 name="id_auteur">'."\n";
$result = mysql_query("SELECT id_auteur, nom, prenom FROM fiches_auteur" );
while($data = mysql_fetch_array($result))
{
if ($data['id_auteur'] == $id_auteur)
$selected = "selected";
else
$selected = "";
echo '<option value="'.$data['id_auteur'].'" selected="'.$selected.'">'.$data['nom']. ' ' .$data['prenom'];
echo '</option>'."\n";
}
echo '</select>'."\n";
?>
[/code]
Je pense que le fait d'avoir $data['nom'] et $data['prenom'] met le boxon. Penses-tu que cela est possible ?
mici
Alors ton code fonctionne presque bien :
En fait si je le mets tel quel il ne change rien, il faut que je rajoute :
echo '<option value="'.$data['id_niveau'].'" selected="'.$selected.'">'.$data['niveau'];
selected = dans la valeur.
Ca marche pour deux de mes 3 <select> mais la troisième pas moyen :
[code]
<?php
echo '<select size=1 name="id_auteur">'."\n";
$result = mysql_query("SELECT id_auteur, nom, prenom FROM fiches_auteur" );
while($data = mysql_fetch_array($result))
{
if ($data['id_auteur'] == $id_auteur)
$selected = "selected";
else
$selected = "";
echo '<option value="'.$data['id_auteur'].'" selected="'.$selected.'">'.$data['nom']. ' ' .$data['prenom'];
echo '</option>'."\n";
}
echo '</select>'."\n";
?>
[/code]
Je pense que le fait d'avoir $data['nom'] et $data['prenom'] met le boxon. Penses-tu que cela est possible ?
mici
wenijah
Messages postés
72
Date d'inscription
mercredi 20 juin 2007
Statut
Membre
Dernière intervention
26 janvier 2012
6
22 août 2007 à 11:39
22 août 2007 à 11:39
^Holà!
Juste pour info:
<option value="'.$data['id_auteur'].'" selected="'.$selected.'">
^ cela n'existe pas, cela doit être:
<option value="'.$data['id_auteur'].'" '.$selected.'>
A+
~W~
Juste pour info:
<option value="'.$data['id_auteur'].'" selected="'.$selected.'">
^ cela n'existe pas, cela doit être:
<option value="'.$data['id_auteur'].'" '.$selected.'>
A+
~W~
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 août 2007 à 11:49
22 août 2007 à 11:49
Définitivement, non.
La vraie bonne syntaxe est celle donnée par reitepac :
<option selected="selected">
En XML, et donc en XHTML, les attributs sont forcément de la forme nom="valeur". Il ne peut pas y avoir d'attribut n'ayant qu'un nom. HTML le permet car il est laxiste par rapport aux normes HTML, mais ce n'est pas le cas du XHTML.
La vraie bonne syntaxe est celle donnée par reitepac :
<option selected="selected">
En XML, et donc en XHTML, les attributs sont forcément de la forme nom="valeur". Il ne peut pas y avoir d'attribut n'ayant qu'un nom. HTML le permet car il est laxiste par rapport aux normes HTML, mais ce n'est pas le cas du XHTML.
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 11:41
22 août 2007 à 11:41
Bon en fait cela ne fonctionne pas... j'ai fais plusieurs essais. C'est vraiment à son bon vouloir.
j'ai :
id_cat = 1
categorie = guitare
id_niveau = 1
niveau = debutant
id_auteur = 1
nom = berer
prenom = louis
et
id_cat = 2
categorie = batterie
id_niveau = 2
niveau = confirmé
id_auteur = 2
nom = Pierre
prenom = jean
quand il affiche la liste, c'est nikel, il me met les bons id respectifs et les bonnes catégories respectives mais quand je modifie, pas moyen, desfois, c'est niveau 2 alors que c'est 1... je ne capte pas :/
patrice
j'ai :
id_cat = 1
categorie = guitare
id_niveau = 1
niveau = debutant
id_auteur = 1
nom = berer
prenom = louis
et
id_cat = 2
categorie = batterie
id_niveau = 2
niveau = confirmé
id_auteur = 2
nom = Pierre
prenom = jean
quand il affiche la liste, c'est nikel, il me met les bons id respectifs et les bonnes catégories respectives mais quand je modifie, pas moyen, desfois, c'est niveau 2 alors que c'est 1... je ne capte pas :/
patrice
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 11:43
22 août 2007 à 11:43
bon ben je viens de remettre ton code... il n'ya pas moyen, il reste figé sur le premier de chaque select.
Comprends pas.
Patrice
Comprends pas.
Patrice
wenijah
Messages postés
72
Date d'inscription
mercredi 20 juin 2007
Statut
Membre
Dernière intervention
26 janvier 2012
6
22 août 2007 à 11:45
22 août 2007 à 11:45
le problème survient quand tu modifies? Donc, quand tu valides ton formulaire?
Si c'est bien cela, cela doit être soit pendant la récupération des données que ça plante, soit quand tu entres les infos dans MySQL..
Ou alors... Pourrais-tu aller sur la page de formulaire, puis voir source et poste ici le formulaire, peut-être qu'au lieu de mettre une valeur différente dans chaque "value", il met la valeur initiale.
~W~
Si c'est bien cela, cela doit être soit pendant la récupération des données que ça plante, soit quand tu entres les infos dans MySQL..
Ou alors... Pourrais-tu aller sur la page de formulaire, puis voir source et poste ici le formulaire, peut-être qu'au lieu de mettre une valeur différente dans chaque "value", il met la valeur initiale.
~W~
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 11:53
22 août 2007 à 11:53
pour l'auteur cela ne change rien. En fait je pense que le soucis est autre part, je m'explique :
j'ai 4 tables :
table fiches_auteur
- id_auteur
- nom
- prenom
tables fiches_categories
- id_cat
- categorie
table fiches_niveau
- id_niveau
- niveau
table fiches_infos
- id_cat
- id_niveau
- id_auteur
- titre ....
Et dans ma page rédiger_fiche.php, j'affiche avec la boucle while (que tu m'as retravaillé) les éléments de chaque table. Pour moi, il doit récup les différents id de chaque tables et le mettre dans la table fiches_infos.
au dessus des boucles, j'ai :
donc logiquement il récupère bien les variables...
j'ai 4 tables :
table fiches_auteur
- id_auteur
- nom
- prenom
tables fiches_categories
- id_cat
- categorie
table fiches_niveau
- id_niveau
- niveau
table fiches_infos
- id_cat
- id_niveau
- id_auteur
- titre ....
Et dans ma page rédiger_fiche.php, j'affiche avec la boucle while (que tu m'as retravaillé) les éléments de chaque table. Pour moi, il doit récup les différents id de chaque tables et le mettre dans la table fiches_infos.
au dessus des boucles, j'ai :
<?php if (isset($_GET['modifier_fiche'])) // Si on demande de modifier une fiche { // On protège la variable "modifier_fiche" pour éviter une faille SQL $_GET['modifier_fiche'] = mysql_real_escape_string(htmlspecialchars($_GET['modifier_fiche'])); // On récupère les infos de la correspondante $retour = mysql_query('SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=\'' . $_GET['modifier_fiche'] . '\''); $donnees = mysql_fetch_array($retour); // On place les elements du formulaire dans des variables simples $id_cat = stripslashes($donnees['id_cat']); $timestamp = stripslashes($donnees['timestamp']); $categorie = stripslashes($donnees['categorie']); $id_niveau = stripslashes($donnees['id_niveau']); $niveau = stripslashes($donnees['niveau']); $nom = stripslashes($donnees['nom']); $prenom = stripslashes($donnees['prenom']); $id_auteur = stripslashes($donnees['id_auteur']); $titre = stripslashes($donnees['titre']); $description = stripslashes($donnees['description']); $plansdecours = stripslashes($donnees['plansdecours']); $exercices = stripslashes($donnees['exercices']); $conseils = stripslashes($donnees['conseils']); $id_fiches = $donnees['id']; // Cette variable va servir pour se souvenir que c'est une modification }
donc logiquement il récupère bien les variables...
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 12:04
22 août 2007 à 12:04
quand je regarde le code source de la page rédiger, il me met selected sur la première option, comme si il ne prenait pas du tout en compte la chose.
Pour la requete SQL, je l'ai essayé dans SQL, il n'y a pas de soucis il me sort bien les deux enregistrment de la table fiche_catégories
Est-ce cette requete là qui ne te plait pas ?
SELECT id_cat, categorie FROM fiches_categories
patrice
Pour la requete SQL, je l'ai essayé dans SQL, il n'y a pas de soucis il me sort bien les deux enregistrment de la table fiche_catégories
Est-ce cette requete là qui ne te plait pas ?
SELECT id_cat, categorie FROM fiches_categories
patrice
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 12:12
22 août 2007 à 12:12
sur ma page qui liste les enregistrements et qui fonctionne, la requete est celle-ci :
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE fiches_infos.id_auteur = fiches_auteur.id_auteur AND fiches_infos.id_niveau = fiches_niveau.id_niveau AND fiches_infos.id_cat = fiches_categories.id_cat
Faut-il que j'utilise la même mais il faut bien que je récupère l'ID de la fiche pour savoir que c'est celle-là qui est modifié et pas une autre.
Je me perds ... vas-y lance moi une pagaye :)
patrice
SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE fiches_infos.id_auteur = fiches_auteur.id_auteur AND fiches_infos.id_niveau = fiches_niveau.id_niveau AND fiches_infos.id_cat = fiches_categories.id_cat
Faut-il que j'utilise la même mais il faut bien que je récupère l'ID de la fiche pour savoir que c'est celle-là qui est modifié et pas une autre.
Je me perds ... vas-y lance moi une pagaye :)
patrice
ritepac
Messages postés
14
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
22 août 2007
2
22 août 2007 à 12:18
22 août 2007 à 12:18
re :) résolu. En fait tu avais raison, me manquait des éléments dans ma requête SQL :
ce qui était avant :
$retour = mysql_query('SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=\'' . $_GET['modifier_fiche'] . '\'');
ce qui fonctionne :
$retour = mysql_query('SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE fiches_infos.id_auteur = fiches_auteur.id_auteur AND fiches_infos.id_niveau = fiches_niveau.id_niveau AND fiches_infos.id_cat = fiches_categories.id_cat AND id=\'' . $_GET['modifier_fiche'] . '\'');
mici bcp :))))))))
ce qui était avant :
$retour = mysql_query('SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE id=\'' . $_GET['modifier_fiche'] . '\'');
ce qui fonctionne :
$retour = mysql_query('SELECT * FROM fiches_infos, fiches_auteur, fiches_niveau, fiches_categories WHERE fiches_infos.id_auteur = fiches_auteur.id_auteur AND fiches_infos.id_niveau = fiches_niveau.id_niveau AND fiches_infos.id_cat = fiches_categories.id_cat AND id=\'' . $_GET['modifier_fiche'] . '\'');
mici bcp :))))))))