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

Bibliothèques et frameworks PHP Discussion :

[Smarty] Valeur des champs en modification


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut [Smarty] Valeur des champs en modification
    Bonjour,

    Je viens de m'appercevoir d'une grosse coquille en testant mon appli.

    Je suis en modification sur ma table (mysql)

    Lorsque j'ai une anomalie je réaffiche ma page, mais mes champs affichés reprennent la valeur de ma table.

    Pour être clair voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Libellé : Bonjour
    Texte : Nous abordons aujourd'hui
    "Bonjour" vient de ma table

    Je modifie mon libellé et je saisie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Libellé : Bonsoir
    Texte :
    Le fait de mettre le texte à blanc signal une erreur et la page se réaffiche avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Libellé : Bonjour
    Texte : Nous abordons aujourd'hui
    En fait il relit la table (mysql). Alors j'ai fait une condition pour éviter la relecture. Résultat je me retrouve avec

    Rien

    Voici mon 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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    <?php
    include("../inc/conf.php");
    include("../inc/fonctions.php");
    include("../inc/verif.php");
    include("../inc/smarty.php");
     
    // Récupération de l'ID de la table
    $sql_id=@$send_sql_id;
     
    // Récupération du type de traitement demandé
    $demande_trt=@$send_trt;
    $smarty->assign("sql_id", $send_sql_id);
     
    // Connexion à la base de données
    include("../inc/connexion_bdd.php");
     
    // Initialisation des champs de messages d'erreur
    $messages="";
    $echec="";
    $traitement="";
    // Validation des modification ou retour.
    $retour = "requetes.php";
    include("../inc/valButton.php");
     
    		if (@$traitement == "1")
    		{
    		// Contrôle des champs à mettre à jour
     
    			include("../inc/ctrReqSql.php");
     
        		if($echec=="") 
       			{
     
    			$traitement = "0";
     
                $libelle = trim($libelle);
    			$libelle = strip_tags($libelle);
    			$libelle = str_replace('"','&quot;',$libelle);
    			$libelle = stripslashes($libelle);
     
                $sql_requete = trim($sql_requete);
    			$sql_requete = strip_tags($sql_requete);
    			$sql_requete = str_replace('"','&quot;',$sql_requete);
    			$sql_requete = stripslashes($sql_requete);
     
    			$libelle = addslashes($libelle);				
     
    								$req = ("UPDATE ".$prefixe_table."t_sql 
    										SET 	sql_type_id=\"$sql_type_id\", libelle=\"$libelle\", sql_requete=\"$sql_requete\",id_trt=\"$id_trt\"
    										WHERE sql_id=\"$sql_id\"");
     
    								$result = mysql_query("$req") or die ("mise à jour impossible de cette Table accès incorrect");
     
    								mysql_close($connect_db);
     
    								header("location: requetes.php");
    								exit();
    			}
    			else 
    			{ 
            		$messages="Echec.<br>Corrigez votre saisie.<br>".$echec;
            }
    	}
     
    // Lecture de la table des requêtes
    include("../files/get_requete.php");
     
    // Affichage
    $smarty->assign("requete", $requete);
    $smarty->display('modifier_requete.html');
    include("../inc/footer.php");
    ?>
    Une idée serait la bienvenue, je ne vois pas comment faire
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  2. #2
    Membre éprouvé Avatar de gretch
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2006
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 165
    Points : 1 250
    Points
    1 250
    Par défaut
    à tu essayer de recharger (via un include ...) la meme page
    mais en récupérant toute les variable $_POST qui ne sont pas egal à la valeur par defaut et en les réaffichant,

    $nom=$_POST['nom']

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" value="taper ici" name="$nom"/>
    apres SUBMIT :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    IF ($nom == "taper ici" OR ""){
    // tu recharge la page
    }ELSE {
    //ce que tu veux, ça à marcher 
    }

  3. #3
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Merci,

    J'ai fait un test conditionnel.

    Si je suis en $_POST alors j'allimente les champ de mon écran avec les champs POST, sinon je lis mon fichier.

    Et cela semble fonctionner
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

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

Discussions similaires

  1. Récupérer la valeur des champs calculés dans une requète SQL dans vba
    Par FrédéricCM dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 28/06/2006, 16h29
  2. Récupérer les valeurs des champs créés dynamiquement
    Par outlawz dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/05/2006, 16h32
  3. [SPRING][HIBERNATE][MYSQL] insert et valeur des champs.
    Par nikalkal dans le forum Hibernate
    Réponses: 9
    Dernier message: 27/04/2006, 14h07
  4. [STRUTS] Valeur des Champs disable s'efface lors d'actions
    Par cosmos38240 dans le forum Struts 1
    Réponses: 5
    Dernier message: 24/11/2005, 16h20
  5. [servlet][tester la valeur des champs récupérés]
    Par maya5 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 14/05/2004, 10h06

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