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 :

supprimer une ligne donnée d'un array


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Points : 53
    Points
    53
    Par défaut supprimer une ligne donnée d'un array
    Bonjour,
    j'ai un array en pleine session appelé $_SESSION['product'], que je remplie au fur et à mesure. pour le moment il n'y a pas de pb

    quand je veux supprimer une ligne quelconque appelée $_GET['code'], j'ai mis le code suivant:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $c=$_GET['code']; 
    $prod=$_SESSION['product']; 
    unset ($prod[$c]); 
    $_SESSION['product']=$prod;
    le pb c'est que la dernière ligne, il me la supprime sans pb, quand il supprime une ligne au milieux ou au début, tout mon tableau se détériore.

    que faire???


    salutations

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Qu'est ce que tu veux dire par "se deteriore" ?

    Sinon pourquoi utiliser ce $prod intermediaire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $c=$_GET['code'];
    unset ($_SESSION['product'][$c]);

  3. #3
    Membre du Club
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Points : 53
    Points
    53
    Par défaut
    Non ça ne marche pas du tout votre code proposé.

    "se détériore" veut dire engendre des trous, et des fois efface plus de lignes que prévu

    je vous donne le code complet:
    commande_detail.php
    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
     
    $table=$_SESSION['product'];
    echo '<table border=1 class="txt" align="center" cellpadding="3" bordercolor="#005791" cellspacing=0>';
    echo '<tr align="center" class="txtgras" bgcolor="#8abadc">';
    echo '<td >Code</td>';
    echo '<td >Désignation</td>';
    echo '<td >Quantité</td>';
    echo '<td >Prix</td>';
    echo '<td >Montant HT (DA) </td><td ></td><td ></td>';
    echo '</tr>';
     
    		for ($i=0;$i<count($table);$i++)
    		{
    		echo '<tr align="center">';
    		echo '<td >'.$table[$i][0].'</td>';
    		echo '<td >'.$table[$i][1].'</td>';
    		echo '<td >'.$table[$i][2].'</td>';
    		echo '<td >'.$table[$i][3].'</td>';
    		echo '<td >'.$table[$i][3]*$table[$i][2].'</td><td >';
    		echo '<a href="commande_modif.php?code='.$i.'&action=modif"><IMG SRC="images/maj/modf.bmp" alt="" title="Modifier" border=0></a>';
    		echo '</td><td >';
    		echo '<a href="commande_supp.php?code='.$i.'"><IMG SRC="images/maj/supp.bmp" alt="" title="Supprimer" border=0></a></td>';
    		echo '</tr>';
     
    		}
    commande_sup.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?
    session_start();
    $c=$_GET['code'];
    unset ($_SESSION['product'][$c]);
    header('location:commande_detail.php');
    ?>
    j'espère que c'est claire pour pouvoir me refiler une réponse.........merci

  4. #4
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Essaie de supprimer l'enregistrement comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset($_GET['code']))
    	array_splice($_SESSION['product'],$_GET["code"],1);

  5. #5
    Membre du Club
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Points : 53
    Points
    53
    Par défaut
    CODE QTE PRIX MONTANT
    PROD1 15 10 150
    PROD2 20 30 600
    PROD3 25 10 250
    PROD4 30 10 300



    je veux supprimer la ligne qui contient PROD2 (c'est à dire i=1)

  6. #6
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Citation Envoyé par defcon_suny Voir le message
    Essaie de supprimer l'enregistrement comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset($_GET['code']))
    	array_splice($_SESSION['product'],$_GET["code"],1);

  7. #7
    Membre du Club
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Points : 53
    Points
    53
    Par défaut
    Merci beaucoup, whaououou

    cette commande, j'entends parler mais vraiment j'ai pas su l'utiliser..


    meilleures salutations

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

Discussions similaires

  1. [MySQL] supprimer une ligne d'une base de données via un checkbox
    Par sniper_marra dans le forum PHP & Base de données
    Réponses: 20
    Dernier message: 15/08/2008, 12h51
  2. Supprimer une ligne d'une base de données
    Par DashRendar dans le forum Bases de données
    Réponses: 3
    Dernier message: 08/08/2007, 21h52
  3. [vb.net]supprimer une ligne d'une base de donné
    Par progfann dans le forum VB.NET
    Réponses: 2
    Dernier message: 11/07/2007, 21h52
  4. [MySQL] Bouton supprimer une ligne d'une base de donnée
    Par alex13 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 03/02/2007, 19h16
  5. [MySQL] Supprimer une ligne afficher dans une base de donnée
    Par julienchpt dans le forum PHP & Base de données
    Réponses: 31
    Dernier message: 14/10/2005, 16h45

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