begin process at 2012 05 31 02:44:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Problème de syntaxe avec un echo (pour remplir un select)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de syntaxe avec un echo (pour remplir un select)

mercredi 19 mars 2008 à 13:15:55 | Problème de syntaxe avec un echo (pour remplir un select)

lolymeupy

bonjour,
j'ai un pb de syntaxe avec le code suivant :

<?php
$liste_ville=chargement_select();
echo('<select name="ville_evt" id="ville_evt" style="font-family:Arial">');
//echo('<option value="'.'">'.'</option>');

 while ($ligne=mysql_fetch_object($liste_ville))
{
echo('<OPTION value="'.$ligne->nom_ville .'" <?php if($_SESSION[\'ville_evt\']=="'.$ligne->nom_ville.'") echo \'selected\'=\"selected\"\' ?>  >'.$ligne->nom_ville.'</OPTION>');
}

echo('</select>');
?>

J'obtiens dans mon select les bons champs mais tous précédés par le signe ">" qui coorespond au 2ème > dans le bout de code suivant :
selected\"\' ?>  >'.$ligne

(
Je précise que ce que je veux obtenir c'est ça :
<SELECT name="categorie_evt" id="categorie_evt" title="" style="font-family:Arial">
<OPTION value="Concert"  <?php if($_SESSION['categorie_evt']=="Concert") echo 'selected="selected"' ?>  >Concert</OPTION>
<OPTION value="Théatre"  <?php if($_SESSION['categorie_evt']=="Théatre") echo 'selected="selected"' ?>  >Théatre</OPTION>
...
<OPTION value="Arts"  <?php if($_SESSION['categorie_evt']=="Arts") echo 'selected="selected"' ?>  >Arts du spectacle <I>(art de rue, cirque,...)</I></OPTION>
</SELECT>

Si j'utilise une boucle pour le premier select c'est que j'y ai + de 300 options à mettre !)
mercredi 19 mars 2008 à 13:29:45 | Re : Problème de syntaxe avec un echo (pour remplir un select)

neigedhiver

Salut,

A l'intérieur d'une chaine entourée de guillemets simples, il ne faut pas échapper les guillemets doubles.

echo('<OPTION value="'.$ligne->nom_ville .'" <?php if($_SESSION[\'ville_evt\']=="'.$ligne->nom_ville.'") echo \'selected\'=\"selected\"\' ?>  >'.$ligne->nom_ville.'</OPTION>');

=>

echo('<OPTION value="'.$ligne->nom_ville .'" <?php if($_SESSION[\'ville_evt\']=="'.$ligne->nom_ville.'") echo \'selected\'="selected"\' ?>  >'.$ligne->nom_ville.'</OPTION>');

D'ailleurs c'est marrant, y'a que 2 guillemets doubles que tu échappes, pas les autres...


Neige
mercredi 19 mars 2008 à 13:49:49 | Re : Problème de syntaxe avec un echo (pour remplir un select)

lolymeupy

Merci pour l'info neigedhiver.
Mais en fait c'est parce que je dois obtenir :
'selected'="selected"
(cf comparaison avec l'autre select dans mon premier post )

Et j'ai quand même essayé sans, mais j'obtiens toujours le même
résultat ! J'ai toujours le signe > devant chaque option dans ma
liste
mercredi 19 mars 2008 à 14:09:33 | Re : Problème de syntaxe avec un echo (pour remplir un select)

neigedhiver

Ben oui, mais je vois pas où est le problème : pas besoin d'échapper les " dans une chaine avec '.
Quand tu fais :
echo '<option name="bidule" selected="selected" value="truc" />';
tu obtiens bien ça dans ton html :
<option name="bidule" selected="selected" value="truc" />
Si tu veux absolument avoir un \ dans ton html, il faut l'échapper avec un \ : \\


Neige
mercredi 19 mars 2008 à 14:14:19 | Re : Problème de syntaxe avec un echo (pour remplir un select)

lolymeupy

ok, je te remercie, je vais les enlever.
mais pas d'idée pour le problème du > (qui correspond à la fin du
<option )  ? Il me l'affiche au lieu de le "prendre " comme la fin
de la balise OPTION ...
mercredi 19 mars 2008 à 14:28:58 | Re : Problème de syntaxe avec un echo (pour remplir un select)

neigedhiver

Pardon, j'avais pas regardé assez en détails : ton code est crade...

echo('<OPTION value="'.$ligne->nom_ville .'" <?php if($_SESSION[\'ville_evt\']=="'.$ligne->nom_ville.'") echo \'selected\'="selected"\' ?>  >'.$ligne->nom_ville.'</OPTION>');

=>

echo '<OPTION value="' . $ligne->nom_ville . '"';
if($_SESSION['ville_evt'] == $ligne->nom_ville) {
    echo ' selected="selected" >' . $ligne->nom_ville . '</OPTION>';
}

Je sais pas pourquoi tu mets du php dans le echo avec un bloc if... Ca n'a aucun sens...

Neige
mercredi 19 mars 2008 à 17:58:58 | Re : Problème de syntaxe avec un echo (pour remplir un select)

lolymeupy

le problème c'est que :

if($_SESSION['ville_evt'] == $ligne->nom_ville) {

ca veut dire que si le if n'est pas vrai, il ne ferme pas le select
puisque le > de fermeture est dans le if !
mercredi 19 mars 2008 à 18:03:43 | Re : Problème de syntaxe avec un echo (pour remplir un select)

lolymeupy

...et parce que ce que je voudrais obtenir c'est ça :

<SELECT name="categorie_evt" id="categorie_evt" title="" style="font-family:Arial">
<OPTION value="Concert"  <?php if($_SESSION['categorie_evt']=="Concert") echo 'selected="selected"' ?>  >Concert</OPTION>
...
</SELECT>

mais comme j'ai 300 champs, je "préfère" faire une boucle pour ce select
mercredi 19 mars 2008 à 19:18:48 | Re : Problème de syntaxe avec un echo (pour remplir un select)

neigedhiver

Est-ce que tu as passé un peu de temps à lire la doc de php ?
La structure de contrôle if accepte l'utilisation de else.

Et puis pour fermer le select, tu n'as qu'à le sortir du if. Je pensais pas que c'était si compliqué à faire.


Neige


Cette discussion est classée dans : ligne, select, echo, syntaxe, ville


Répondre à ce message

Sujets en rapport avec ce message

Affichage page par page [ par Leneuf8000 ] Bonjour, j'aimerai réaliser un affichage page par page. En fait je voudrai que tout soit gérer dans le même fichier.  Ainsi pour le moment, mes résult Besoin d'aide poru faire une simple recherche [ par chardene_amour_de_freddy ] Bonjour à tous !Merci par avance à toutes âmes charitables qui se ponchera sur mon sujet !En fait je souhaiterais faire une recherche dans le module q double menu déroulant [ par jycks ] bonjours, voilà j'ai un menu déroulant qui affiche des villes et je voudrais que quand je clique sur un ville cela m'affiche dans une deuxième liste l liste déroulante mois et année [ par yravas ] bonjour, j'ai réalisé deux listes déroulantes: une pour le mois et une pour l'année. L'affichage se réalise correctement mais lorsque je selectionne u Au secours... implode sur une ligne d'un tableau [ par yravas ] bonjour a tous, voila j'avais deja posé des questions sur ce sujet et je pensais que mon programme marchait mon non. En fait, je voudrai utiliser la f affichage photo [ par 01cod10 ] Salut,J'ai un problème pour afficher la photo d'un membre dans sa fiche. j'arrive  à uploader la photo, elle est bien dans le répertoire destination a listbox [ par refkaben ] Bonjour à tous!J'ai un pb avec les listes box,En fait j'ai deux listes, j'ai rempli la première(secteur) à partir d'une requete select, maintenant je C'est sans doute bête... [ par gypsi3000 ] J'ai deux fichiers : medecin.php3 qui contient un formulaire avec ce code              & Affichage données fichier csv [ par flopad ] Salut à vous!J'ai le code suivant : A la place d'afficher le fichier, je voudrais seulement afficher la ligne contenant la variable tapée dans le form Question idiote : syntaxe echo [ par chapata ] Hello ,petite question de syntaxe concernant les : echo echo '';pouvez vous me dire pourquoi, il y a des vir


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,604 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales