IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] syntaxe des guillemets


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 48
    Points : 42
    Points
    42
    Par défaut [Tableaux] syntaxe des guillemets
    j'ai un problème car j'ai car j'ai un script mais j'ai plusieur cote à mettre et je ne sais pas comment les écrire dans mon script pour l'instant sa me donne un erreur car mes guillemets ne sont pas bien saisis.
    Voici mon code pouvee vous m'aider?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 48
    Points : 42
    Points
    42
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql="select loc_libelle from locaux, ailes where aile_libelle = ".$_POST['ess']." ";
    					$rep = mysql_query($sql) or die ('erreur sur la selection'.mysql_error());

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Avec le code, ca nous aiderait plus..

    Sinon, si tu veux mettre des double quotes dans une chaine php , precede ces doubles-quotes d'un \. Les simple quotes passent sans soucis

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Pour des données venant de l'utilisateur (c'est le cas pour $_POST et $_GET), utilise toujours intval() ou addslashes() sur tes variables dans les requêtes.

  5. #5
    Membre habitué Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Points : 176
    Points
    176
    Par défaut
    est-ce que ton champ aide_libelle est un varchar?? si oui alor c'est normal que tu ai un problème de guillemet essaye ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?
    $sql="select loc_libelle from locaux, ailes where aile_libelle = '".$_POST['ess']."' "; 
    $rep = mysql_query($sql) or die ('erreur sur la selection'.mysql_error());
    ?>
    -> N'oubliez pas de mettre résolu
    http://collinalexis.free.fr

  6. #6
    Membre habitué Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Points : 176
    Points
    176
    Par défaut
    et tu liste 2 tables dans ta requete il manquerait pas une jointure??
    -> N'oubliez pas de mettre résolu
    http://collinalexis.free.fr

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Ah.. les messages se sont croises

    Au premier coup d'oeil, il n'y a pas d'erreurs de quotes..

    Sinon petite remarque, pas besoin de faire une jointure avec une seconde table d'apres les conditions de ta requete...

  8. #8
    Membre habitué Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Points : 176
    Points
    176
    Par défaut
    S'il liste deux table dans sa requete une jointure sera forcement necessaire!
    -> N'oubliez pas de mettre résolu
    http://collinalexis.free.fr

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Ou plutot ne faire sa requete que dans une seule table... enfin ca depend du contexte

  10. #10
    Membre habitué Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Points : 176
    Points
    176
    Par défaut
    apparemment là il fait appel à deux tables, son loc_libelle est dans la table locaux et son champ aile_libelle est dans la table ailes, donc il faut faire une jointure c'est obligatoire apres peut etre que ce n'est pas ce que je crois... Alors tioseb tu en est ou?

    PS : N'oubli pas de mettre Resolu si tu trouve la solution, meme tous seul.
    -> N'oubliez pas de mettre résolu
    http://collinalexis.free.fr

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 48
    Points : 42
    Points
    42
    Par défaut
    nan ce n'est pas vraiment résolu mais je n'est pas besoin de faire de jointure car le ".$_POST['ess']." et la jointure mais vous n'êtes pas censé le savoir donc désolé de ne pas l'avoir dis.
    Sinon la véritable but de ce scipt est d'afficher dans une zone de liste des valeur de ma base de donnée et en fonctionde la valeur choisie la deuxième zone de liste doit prendre des valeur avec cette requête mais mes champs input type="text" ne garde pas la valeur que la zone de liste leur donne comment faire?

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 48
    Points : 42
    Points
    42
    Par défaut
    voici mon code
    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
    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
    <script language="JavaScript"> 
       function affiche()    
       { 
          alert("Vous avez changé la valeur!");
    	  sel = document.getElementById('change'); 
          inp = document.getElementById('ess'); 
          inp.value = sel.options[sel.selectedIndex].value; // ou .text
    	  document.forms['formChange'].submit();
       }
    </script> 
    </head>
    <body> 
     
    <form name="formChange" method="POST"> 
       <table>
       		<tr>
    			<td>
    				<?php
    					// mise en forme de la requête sur la table ailes
    					$sql ="select * from ailes order by aile_libelle;";
     
    					// exécution de la requête 
    					$reponse = mysql_query($sql) or die("Problème lors de la lecture d'une aile! Erreur n° ".mysql_errno()." Libellé de l'erreur : ".mysql_error());
     
    					// mise en forme de la liste déroulante
    					echo ('<select name="change" id="change" onChange="affiche()">');
    					echo "<option value='0' >Choisir une aile</option>";
     
    					// lecture de chaque aile
    					while( $ligne=mysql_fetch_array($reponse) )
    					{
    						// $_POST["choix_aile"] contient le libellé de l'aile sélectionné dans la liste
    						if ($_POST["choix_aile"]==$ligne['aile_libelle'] )
    							// oui : dans ce cas : grâce à l'attribut selected on se positionne sur l'aile sélectionné 
    							echo "<option value='".$ligne['aile_libelle']."' selected>".$ligne['aile_libelle']."</option>";
    						else
    							// non
    							echo "<option value='".$ligne['aile_libelle']."'>".$ligne['aile_libelle']."</option>";
    					}
    					echo "</select>";
    				?>
    			</td>
    			<td>
    				<input type="text" name="ess" id="ess" />
    			</td>
    		</tr>
    		<tr>
    			<td>
    				<?php 
    					$sql="select loc_libelle from locaux, ailes where aile_libelle = '".$_POST['ess']."' ";
    					$rep = mysql_query($sql) or die ('erreur sur la selection'.mysql_error());
    				?>
    				<select name='choix_local' id='choix_local' onChange='affiche2()' >
    					<option value='0' >sélectionnez un local</option>
    					<?php		
    						while($ligne = mysql_fetch_array($rep))
    						{
    							// $_POST["choix_local"] contient le libellé du local sélectionné dans la liste
    							if ($_POST["choix_local"]==$ligne['loc_libelle'] )
    								// oui : dans ce cas : grâce à l'attribut selected on se positionne sur le local sélectionné 
    								echo "<option value='".$ligne['loc_libelle']."' selected>".$ligne['loc_libelle']."</option>";
    								else
    								// non
    								echo "<option value='".$ligne['loc_libelle']."'>".$ligne['loc_libelle']."</option>";
    						}
    					?>  
    				</select>
    			</td>
    			<td>
    				<input type="text" name="essai" id="essai" />
    			</td>

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 48
    Points : 42
    Points
    42
    Par défaut
    ma deuxième zone de liste utilise une fonction javascript affiche2(), je ne l'ai pas mise car c'est la même chose que la première fonction affiche()

  14. #14
    Membre habitué Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Points : 176
    Points
    176
    Par défaut
    pour alimenter ta deuxième liste tu peux peut-etre utiliser la methode PHP SELF voici une idée :
    Pour ton formulaire tu met <form name="xxx" method="POST" action="<? echo $PHP_SELF; ?>">
    Je ne sais pas si ca peut t'aider A+
    -> N'oubliez pas de mettre résolu
    http://collinalexis.free.fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] syntaxe d'échappement des guillemets
    Par yakou32 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/12/2008, 12h52
  2. [VBA] Syntaxe avec des guillemets
    Par Gabout dans le forum VBA Access
    Réponses: 12
    Dernier message: 17/04/2007, 13h48
  3. [Tableaux] Syntaxe pour transmettre des variables
    Par kilkikou dans le forum Langage
    Réponses: 4
    Dernier message: 05/06/2006, 10h26
  4. Réponses: 2
    Dernier message: 12/01/2004, 13h56
  5. Réponses: 6
    Dernier message: 04/04/2003, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo