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 :

votre avis..peut mieux faire ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 210
    Par défaut votre avis..peut mieux faire ?
    Bonjour
    Je me suis torturé l'esprit pour ce bout de code
    et je me demandé si on pouvait faire autrement voir mieux évidement (formulaire avec plusieurs bouton(btn):

    AFFICHAGE d'une partie du formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $sql = $bdd->query('SELECT * FROM activity WHERE numclt ='.$get_numclt.'  ');
    $resultat=$sql->fetchAll(PDO::FETCH_ASSOC);
    foreach ($resultat as  $key1 => $row  ) 
    { 
     
    $id=$row['id']; 
     
    echo  '<textarea name="textarea_a'.$key1.'">'.$activity[$key1]=$row['activityclt'].'</textarea>'; 
    echo  '<input type="hidden"    name="textarea_a_key"   value="'.$key1.'" />';
    echo  '<input type="hidden"  name="textarea_a_id'.$key1.'"   value="'.$id.'" />';
    echo  '<input class="submit" type="submit" value="&#9658" name="btn16-'.$key1.'">'; 
     
    }
    TRAITEMENT :
    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
     
    if (!empty($_POST['textarea_a_key']))
    {
    $cpt=$_POST['textarea_a_key'];
     
    for ($zz=0;$zz <= $cpt;$zz++) // boucle avec le nbr de case  existante
     
    {							
    $btn16 = 'btn16-'.$zz; // quel btn à était cliqué
     
     if (!empty($btn16)) 
     
    	{
    		$textarea='textarea_a'.$zz;
    		$texte=$_POST[$textarea];
    		$iid='textarea_a_id'.$zz;
    		$id=$_POST[$iid];
     
    	       $bdd->exec('UPDATE activity SET `activityclt` = "'.$texte.'"  WHERE `id` = "'.$id.'" ');
     
    	}//isset($btn16
     
    }//for
     
    }//textarea_a_key'
    Merci pour votre attention
    .

  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
    $iid, $zz ... donne des noms pertinents à tes variables.

    Utilise plutôt des tableaux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo  '<input type="hidden"  name="textarea_a_id['.$key1.']"   value="'.$id.'" />';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 210
    Par défaut
    Merci
    J'avais laissé tomber les array parce que je ne trouve pas la syntaxe pour les récupérer :
    $_POST[' textarea'.[$zz] ] ;
    $_POST[' textarea[$zz] ' ] ;
    $_POST['textarea' ] .[$zz] ;



    heuuu je crois que j'ai trouvé..... je test !.....

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 210
    Par défaut
    voilou ça marche, comme quoi, avec un peu de persévérance !

    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
     
    if (isset($_POST['case1']))
     
    {
    $cpt=$_POST['textarea_a_key'];
     
    for ($zz=0;$zz <= $cpt;$zz++) // boucl avec le nbr de case acticity existante
     
      {							
     
          if (isset($_POST['btn16'][$zz])) 
     
           { 
               $texte=$_POST['textarea_a'][$zz];
               $id=$_POST['textarea_a_id'][$zz];
     
               $bdd->exec('UPDATE activity SET `activityclt` = "'.$texte.'"  WHERE `id` = "'.$id.'" ');
     
           }//isset($btn16
     
        }//for
     
    } // case1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $sql = $bdd->query('SELECT * FROM activity WHERE numclt ='.$get_numclt.'  ');
    $resultat=$sql->fetchAll(PDO::FETCH_ASSOC);
    foreach ($resultat as  $key1 => $row  ) 
    {   	 	 	 	 	 	 	 	 	 	
          $id=$row['id']; 
          echo  '<span class="date">'.$row['datea'].'</span>';
          echo  '<textarea name="textarea_a['.$key1.']">'.$row['activityclt'].'</textarea>'; 
          echo  '<input type="hidden"  name="textarea_a_id['.$key1.'] "   value="'.$id.'" />';
          echo  '<input type="hidden"  name="case1"   value="activity" />';
          echo  '<input type="hidden"    name="textarea_a_key"   value="'.$key1.'" />';
          echo  '<input class="submit" type="submit" value="&#9658" name="btn16['.$key1.']">'; 
    }
    C'est mieux là, non ?

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

Discussions similaires

  1. [CakePHP] Peut mieux faire..
    Par Darkaurora dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 24/03/2014, 14h49
  2. [Mail] A votre avis pour faire un site de camping..
    Par pierre987321 dans le forum Langage
    Réponses: 5
    Dernier message: 04/05/2007, 15h40
  3. [Votre avis]Comment faire son empaquetage
    Par sovo dans le forum Installation, Déploiement et Sécurité
    Réponses: 14
    Dernier message: 04/10/2006, 09h10
  4. Réponses: 6
    Dernier message: 07/07/2006, 17h36

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