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 :

Array et select


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    478
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 478
    Par défaut Array et select
    Bonjour,

    j'utilise la ligne de commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $data = mysql_query("select lng FROM markers where id in (1,2,3)");
    je voudrais remplacer les valeurs (1,2,3) par un array ($box)

    Mon array est generer a partir d'une autre page, pour l'envoyer vers ma page j'utilise la commande suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo "<form method=post action='ma page.php' >";
    $box=$_POST['box'];
    puis je la recupere sur l'autre page avec
    Ensuite je voulais le mettre dans mon select comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $data = mysql_query("select lng FROM markers where id in ('$box')");
    Mais ca ne fonctionne pas

    Une idee

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si $box vaut "1,2,3" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $data = mysql_query("select lng FROM markers where id in (" . mysql_real_escape_string($box) . ")");
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    478
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 478
    Par défaut
    Non ca ne fonctionne pas, par contre si la syntaxe est correcte cela doit venir de ma facon de passer l'array de ma page A.php a ma page B.php

    sur ma page A.php j'ai le code suivant pour recuperer des infos venant de checkbox avec le nom box

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo "<form method=post action=B.php' >";
    $box=$_POST['box'];
    et sur ma page B.php je recupere les info de cette facon

    Cela est-il correcte?

  4. #4
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 494
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 494
    Par défaut
    Salut,

    C'est peut-etre parce que tu lui passe un array dans ta requete sql qu'il n'aime pas..
    essaye de le passer en string avant.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $string='';
    foreach($_POST['box'] as $item)
        $string.=$item.',';
     
    $string=substr($string, 0, -1);//pour supprimer la derniere virgule
    echo $string;
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if ($_SERVER['REQUEST_METHOD'] == 'POST' && is_array($_POST['box'])) {
        $safebox = array_map('intval', $_POST['box']);
        $data = mysql_query('SELECT lng FROM markers WHERE id IN (' . implode(', ', $safebox) . ')');
        // ...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    478
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 478
    Par défaut
    Un grand merci pour votre aide, ca fonctionne

    voici le code au complet

    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
    $box = $_POST['box'];
    $string='';
    foreach($_POST['box'] as $item)
        $string.=$item.',';
     
    $string=substr($string, 0, -1);//pour supprimer la derniere virgule
    echo $string;
     
    $user = "";
      $password = "";
      $host = "";
      $bdd = "";
     
    $cnx = mysql_connect($host,$user,$password);
      mysql_select_db($bdd) or die("erreur de connexion à la base de données");
     
     
    $tab=array(); 
     
    $data = mysql_query("select lng FROM markers where id in (" . mysql_real_escape_string($string) . ")");
    {while($ligne= mysql_fetch_array ($data)) 
    array_push($tab,$ligne['lng']); 
    } 
    ?>
     
     
    <script language="JavaScript"> 
     
    function addMarkers() {
     
    var json = <?php echo json_encode($tab); ?>;//transformer arra Php en Javascript

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

Discussions similaires

  1. array et Select
    Par toutais dans le forum jQuery
    Réponses: 7
    Dernier message: 03/08/2011, 14h21
  2. [Tableaux] select multiple et concatenation array
    Par carelha dans le forum Langage
    Réponses: 5
    Dernier message: 06/08/2007, 13h44
  3. Réponses: 7
    Dernier message: 05/10/2006, 11h48
  4. Réponses: 11
    Dernier message: 17/07/2006, 22h08
  5. Comment affecter un array à un element select
    Par ouioui2000 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/01/2006, 12h26

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