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

PHP & Base de données Discussion :

Sélection de plusieurs lignes


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut Sélection de plusieurs lignes
    Bonjour,

    Je gère grâce à une page php les insertions de personnes d'astreintes dans une page excel. Les données concernant l'astreinte sont récupérées dans une bdd access. Le code représenté ci dessous permet de :

    - Sélectionner l'id des personnes concernées par une astreinte.
    - Puis si l'id n'est pas vide don s'il y a bien quelqu'un affecté à l'astreinte
    - On sélectionne les informations concernant la personne
    - Puis on insère les données (nom, adresse, tel) dans des cellules de la page excel

    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
    <? $sql = "SELECT Num_pers FROM Astreinte WHERE Num_ast=4 AND Date_debut='$date_deb' AND Date_fin='$date_fin'";
    $res = exec_requete($con, $sql);
    while($arr=fetch_requete($res))
    {
    $id=$arr[0];
    }
     
    if ($id != '')
    {
    $sql = "SELECT Nom, Adresse, Tel_perso, Portable_pro FROM Personnel WHERE Id=$id";
    $res = exec_requete($con, $sql);
    while($arr=fetch_requete($res))
    {
    $nom=$arr[0];
    $adresse=$arr[1];
    $telperso=$arr[2];
    $portable=$arr[3];
     
    $nom .= chr(10); //permet de faire un saut de chariot dans la ligne excel
    }
     
    $selcell=$sheet1->cells(10, 3);
    $selcell->activate;
    $selcell->value=$nom;
     
    $selcell=$sheet1->cells(10, 4);
    $selcell->activate;
    $selcell->value=$adresse;
     
    $selcell=$sheet1->cells(10, 6);
    $selcell->activate;
    $selcell->value=$telperso;
     
    $selcell=$sheet1->cells(10, 7);
    $selcell->activate;
    $selcell->value=$portable;
    } ?>
    Voilà un peu ce que j'ai fais!
    Cependant les personnes d'astreintes pour le service sont deux...
    Avec le petit bout de code que vous avez sous les yeux je n'ai qu'une personne inscrite dans ma page excel et c'est la deuxième personne.

    J'aimerais savoir si quelqu'un peut me dire comment modifier ce code pour me permettre d'afficher les deux personne dans une même ligne.(D'où la fonction chr(10) qui me permet d'aligner le caractère suivant juste en dessous de l'autre dans une même ligne --> Autrement dit faire un saut de chariot)

    Merci d'avance

  2. #2
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Dans ton code tu utilises une boucle while() qui permet de récupérer les résultats de ta base de données. Tu stockes ces données dans une variable et du coup a chaque tour de boucle tu écrases l'ancienne valeur.
    Je pense que tu dois mettre le code écrivant dans le fichier excel (ce qu'il y a apres la boucle) directement dans la boucle pour que ca le fasse a chaque ligne de résultat.

    Attention, penses bien a changer le numéro des cellules (ligne colonne) sinon tu vas tjs écrire au meme endroit).

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut
    Ok merci pour ton conseil je vais essayer et je te tiens au courant !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut
    Bah c'est good celà fonctionne, j'arrive bien à obtenir tous les noms que je veux mais il reste un problème.

    Pour insérer les noms dans des lignes l'une en dessous de l'autre pas de soucis, je crée une variable ligne et je l'incrémente à chaque tour de boucle. Mais ce n'est pas ce que je veux faire.

    Ce que j'aimerais réaliser, c'est une insertion de tous les noms l'un en dessous de l'autre dans la même ligne. D'où l'utilisation de la fonction chr(10) ...

    Quelqu'un sait comment je pourrais procéder ?

Discussions similaires

  1. Sélectioner de plusieurs lignes avec Clic+MAJ
    Par helios399 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/02/2012, 15h10
  2. Réponses: 2
    Dernier message: 01/06/2011, 16h10
  3. sélection de plusieurs lignes - erreur
    Par needlesurfer dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 24/04/2009, 06h45
  4. [E-02] Sélection de plusieurs lignes ayant une cellule identique
    Par machintruc84 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 21/11/2008, 10h17
  5. [MySQL] Sélection de plusieurs lignes en une requête
    Par kalash_jako dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/05/2006, 19h43

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