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 :

Modification de la valeur d'un attribut


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Par défaut Modification de la valeur d'un attribut
    Bonjour à tous,

    Je suis actuellement en train de dev une appli web PHP(PDO)/MySQL et j'ai un soucis lors de la modification d'une quantité.
    La modification se passe bien, mais si j'en modifie une autre, ou si je veux ajouter une commande, la commande où j'ai fait la modification est supprimée de la table.

    La vue (v_afficherEntree.php) qui affiche le tableau des commandes de la journée :
    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
    38
    39
    40
    41
     
    <div id="contenu">
     
    	<h2>Ajout de la journ&eacute;e :</h2>
    	<?php
    		$ajouts = $pdo->afficherAjout();
    	?>
    	<pre>
    		<table id="tabref">
    			<tr>
    				<th id="thref"> Identifiant Infos </th>
    				<th id="thref"> R&eacute;f&eacute;rences </th>
    				<th id="thref"> Quantit&eacute; </th>
    				<th id="thref"> Modifications </th>
    			</tr>
    			<?php
    			foreach($ajouts as $unAjout){
    				$idRef = $unAjout['ID_REF'];
    				$ref = $unAjout['REF'];
    				$qte = $unAjout['QUANTITE'];
    				$dateAjout = $unAjout['DATE_AJOUT'];
    			?>
    				<tr>
    					<td id="tdref"><?php echo $idRef; ?></td>
    					<td id="tdref"><?php echo $ref; ?></td>
    					<td id="tdref"><?php echo $qte; ?></td>
    					<td id="tdref">
    						<form method="post" action="index.php?uc=gererRaccord&action=modifierEntree&idRef=<?php echo $idRef; ?>&dateAjout=<?php echo $dateAjout; ?>">
    							<input type="text" name="qteModif">
    							<input type="submit" name="Modifier" value="Modifier">
    						</form>
     
    						<a href="index.php?uc=gererRaccord&action=supprimerEntree&idRef=<?php echo $idRef; ?>&dateAjout=<?php echo $dateAjout; ?>">Suppprimer</a>
    					</td>
    				</tr>
    			<?php
    			}
    			?>
    		</table>
    	</pre>
    </div>
    Je suis déjà pas très sur du code des 2 "boutons" modifier et supprimer que j'ai adapté d'un code trouvé sur ce forum.


    Fonctions situées dans class.pdovpb.inc.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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    /**
    	* Supprime la ligne de la table référence
     
    	* intervient après les ajouts
     
    	* @param $idInfos
    	* @param $dateAjout
     
    	* @return les lignes validées
    	*/
    	public function supprEntree($idRef, $dateAjout){
    		$req="delete from REFERENCE
    			where REFERENCE.ID_REF = $idRef
    			AND REFERENCE.DATE_AJOUT = '$dateAjout'
    		";
    		$res = PdoVPB::$monPdo->query($req);		
    	}
     
    	/**
    	* Modifie la ligne de la table référence
     
    	* intervient après les ajouts
     
    	* @param $qteModif
    	* @param $idInfos
    	* @param $dateAjout
     
    	* @return les lignes validées
    	*/
    	public function modifEntree($qteModif, $idRef, $dateAjout){
    		$req="update REFERENCE
    			set QTE_CMD = $qteModif
    			where REFERENCE.ID_REF = $idRef
    			AND REFERENCE.DATE_AJOUT = '$dateAjout'
    		";
    		$res = PdoVPB::$monPdo->query($req);		
    	}
    Fichier contrôleur c_gererRaccord.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
    26
     
    switch($action){
     
    [...]
     
           case 'modifierEntree':{
    		$qteModif = $_REQUEST['qteModif'];
    		$idRef = $_REQUEST['idRef'];
    		$dateAjout = $_REQUEST['dateAjout'];
     
    		$pdo->modifEntree($qteModif, $idRef, $dateAjout);
     
    		include("vues/v_afficherEntree.php");
    		include("vues/v_entreeRaccord.php");
    	}
     
    	case 'supprimerEntree':{
    		$idRef = $_REQUEST['idRef'];
    		$dateAjout = $_REQUEST['dateAjout'];
     
    		$pdo->supprEntree($idRef, $dateAjout);
     
    		include("vues/v_afficherEntree.php");
    		include("vues/v_entreeRaccord.php");
    	}
    }
    Si vous voyez une quelconque erreur, même non relative au problème, n'hésitez pas à le signaler.
    Merci d'avance pour vos réponses !

  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
    Tu as oublié le break; dans tes "case".

    Par contre il faut que tu utilises des requêtes préparées. Actuellement tes requêtes sont vulnérables aux injections.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Par défaut
    Et c'est à ce moment précis que je me sens con ...

    Et pour les requêtes je sais, mais j'avais pas jugé utile de le faire en début de projet, vu qu'il va être en accès intranet pour 5 employés. Ceci dit je pense le faire quand même, ne serait-ce que pour prendre l'habitude de le faire dans le futur.

    En tout cas merci à toi !

Discussions similaires

  1. GeoTools : Pb animation features : modification en mémoire de la valeur d'un attribut
    Par macrosjiu dans le forum SIG : Système d'information Géographique
    Réponses: 4
    Dernier message: 24/10/2007, 17h07
  2. [XML] Modification de la valeur d'un attribut
    Par chrix10.2 dans le forum Général Python
    Réponses: 2
    Dernier message: 06/12/2006, 09h16
  3. Réponses: 2
    Dernier message: 07/07/2005, 18h11
  4. Valeur d'un attribut
    Par DarkMoox dans le forum Requêtes
    Réponses: 5
    Dernier message: 10/10/2004, 18h31
  5. [VB.NET] [XML] Modification d'une valeur
    Par kirk80 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 09/09/2004, 16h15

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