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 :

[SQL] Modification de champs d'un tableau dynamique dans une base de données


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut [SQL] Modification de champs d'un tableau dynamique dans une base de données
    Bonjour,

    J'ai déjà fait un post car j'avais des soucis pour insérer. Maintenant l'insertion marche mais je n'arrive pas à modifier...

    J'ai une page modif où il ya les champs à modifier. Voici le 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
     
     
    <?php 
    $i = 0;
    $nb = sizeof($row_interventions['motif_intervention']);
     
    do{
     
    ?>
    <tr>
     
      <td><input type="text" name="motif_intervention[$i]" maxlength="60" size="30" value="<?php echo $row_interventions['motif_intervention'];?>"></td>
      <td><textarea name="description_intervention[$i]" cols="30" rows="4"><?php echo $row_interventions['description_intervention'];?></textarea></td>
     
      </tr>
     <?php 
         $i++;
     
    }while($row_interventions = mysql_fetch_array($interventions));
     ?>
     
    <input type="hidden" name="MM_update" value="form1">
    <input type="submit" name="Submit" value="Valider">
    Ce code est dans un formulaire en méthode post.

    La requête pour modifier les champs dans la base de données est située dans une autre page. Voici le code de ma requête sql :

    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
     
     
    $i = 0;
    $nb = sizeof($_POST['motif_intervention']);
    while ($i < $nb)
    {
    	echo $i;
    	echo $_POST['motif_intervention'][$i];
    	$updateSQL2 = sprintf("UPDATE detail_intervention SET motif_intervention=%s, description_intervention=%s WHERE id_intervention = '".$_POST['id_intervention']."'",
     
    					   GetSQLValueString($_POST['motif_intervention'][$i], "text"),
    GetSQLValueString($_POST['description_intervention'][$i], "text")
                          );
     
     
    $Result2 = mysql_query($updateSQL2, $aloa) or die(mysql_error());
     
    $i ++;
     
    }
    Le problème est que quand je modifie, il vide mes champs existant et me met les messages d'erreurs suivant :

    Notice: Undefined offset: 0 in c:\program files\easyphp1-8\www\site aloa\confirm_modif.php on line 286

    Si quelqu'un voit d'où peut venir cette erreur...

  2. #2
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Si on pouvait savoir quelle ligne est la #286 ça pourrait déjà avancer un chouilla

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Il met ce message d'erreur pour toutes les lignes où il y a $_POST['motif_intervention'][$i] ou $_POST['description_intervention'][$i].

  4. #4
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Tu fais bien un $row_interventions = mysql_fetch_array($interventions); avant ta boucle do...while ?

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    oui, j'ai une requête comme ça :

    $query_interventions = "SELECT ..."
    $interventions = mysql_query($query_interventions, $aloa) or die(mysql_error());
    $row_interventions = mysql_fetch_array($interventions);
    $totalRows_interventions = mysql_num_rows($interventions);

  6. #6
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Si tu fais un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $_POST['motif_intervention'];
    qu'est-ce que ça donne ?

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/06/2012, 17h19
  2. [Conception] Insertion de champs d'un tableau dynamique dans une base de données
    Par loreleï85 dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 12/05/2011, 14h39
  3. Réponses: 2
    Dernier message: 21/08/2009, 16h36
  4. Réponses: 1
    Dernier message: 23/06/2006, 11h19
  5. Réponses: 9
    Dernier message: 22/06/2006, 20h06

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