formulaire a deux actions

Répondre
exter666
le 17/02/2005 à 16:10
exter666
bonjour
comment on fait un formulaire a 2 action par exemple effacer et modifier ce qui a ete changer?
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
keitarosan
le 17/02/2005 à 16:12
keitarosan
tu pourrais pas etre un peu plus précis, avec un exemple concret?

sinon on va avoir du mal a te donner une réponse appropriée à ton cas ;)
>> http://projectopensource.free.fr/index.php?m=2&m2=5&s=8 <<
exter666
le 17/02/2005 à 16:18
exter666
ok voici g un formulaire ou se trouve des valeurs par defaut. Je voudrais que l'utilisateur puisse les modifier et les updater dans la base de données, ou bien supprimer cette entrée de la base de données. je sais pas si g ete plus clair...
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
keitarosan
le 17/02/2005 à 16:26
keitarosan
et bien tu mets deux bouton.

Un pour l'effacement des données, et un pour l'update des données.

Et quand il appuye sur l'un des bouton, tu testes lequel.
exemple:

<?php

if (TRUE == isset($_POST["delete"])
{
//code pour effacer les données.
}
else if (TRUE == isset($_POST["update"])
{
//code pour modifier les données.
}


?>

<form method="post">
<input type="submit" name="delete" value="Supprimer">
<input type="submit" name="update" value="Modifier">
</form>


ou pour ceux qui vont pousser des hauts cris en voyant mon code :p
<?php

if (isset($_POST["delete"])
{
//code pour effacer les données.
}
else if (isset($_POST["update"])
{
//code pour modifier les données.
}


?>

<form method="post">
<input type="submit" name="delete" value="Supprimer">
<input type="submit" name="update" value="Modifier">
</form>


(je précise qu'il parait plus logique quand il y a une condition, d'avoir une valeur de test et la valeur a tester, que juste une donnée, meme si techniquement ca fonctionne et que c'est plus court ^^)
>> http://projectopensource.free.fr/index.php?m=2&m2=5&s=8 <<
exter666
le 17/02/2005 à 16:49
exter666
on ne sait plus dans ce cas ci utiliser les propriété du formulaire (comme par exemple l'envoit des input). J'aurai voulu que le formulaire puisse faire les 2 actions séparement..
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
Bzh
le 17/02/2005 à 20:00
Bzh
Mais tu l' as déja ta valeur quand tu test !!!!

Si c' est vrai
<?php if(){} ?>


Si c' est faut
<?php if(!){} ?>


Si tu test une fonction avec une valeur d' acord !!!

Mais si la fonction renvoie déjà VRAI ou FAUT c' est bon !!!

Je ne comprends ce que tu veu dire par là....
keitarosan
le 17/02/2005 à 22:37
keitarosan
lol.

quand tu testes une condition, y a toujours:
<?php
if ($variable == 'comparatif') {}
?>


isset() renvois une valeur (TRUE ou FALSE), ok.
Mais si l'on regarde, on a

<?php
if ($variable == ????) {}
?>


Donc certe, fonctionnellement, ca marche nickel, puisque la condition doit etre TRUE pour etre réalisé, FALSE sinon.

Mais d'un point de vue propreté, et d'un point de vue esthétique et moral, c'est quand meme plus logique de tester faire un comparatif quand on rencontre une condition.

Moi je dis ca, c'est pour ceux qui ne connaissent pas le language, et qui un coup voit un test entre une variable et une valeur de comparaison, et un coup, il se retrouve avec une fonction qui renvois vrai ou faut, et par conséquent, il s'y perde un peu.

D'ailleur, pour etre vraiment clair, on devrait en toute rigueur, mettre:

<?php

$is_exist = isset($variable);//renvois vrai ou faux.
if ($is_exist == TRUE)
{
echo ("La variable existe.");
}
else
{
echo ("La variable n'existe pas.");
}
?>


Au moins, un petit nouveau comprendrais tout de suite, et n'importe qui qui reprends un script et voudrais le modifier et le comprendre, serait tout de suite a meme de le comprendre, sans se poser aucune question. ^^
Après chacun fait comme il veut, certe.
Mais penser que vous aussi, si vous ne toucher pas a votre code pendant 6 mois, et que vous revenez dessus, vous y gagnerez du temps en recompréhension.

Et si vous voulez partager vos script, meme les noob comprendrons.

------------------------------------------

Pour répondre maintenant a celui qui a poster le message, tu peux sans probleme effectuer plusieur actions, par exemple en mettant des checkbox sur les actions a faire.

checkbox1: Delete
checkbox2: Update

Il peut en coché aucune (il ne se passe rien), une (il fait l'action spécifiée), ou les deux, et la il fait tout.

Tu rajoute ca en plus de tout ce que tu as deja, juste au dessus de ton bouton.

Ca a le mérite d'etre clair, et d'etre modulable, et ne pas avoir a faire automatiquement les deux, actions, si une seule était nécessaire.

pour savoir la ou lesquelles actions sont a faire, tu verifies que la personne a bien coché le check box. (en général, si ce n'est pas coché, la valeur du checkbox = '').

J'espere que ca t'aidera :)
>> http://projectopensource.free.fr/index.php?m=2&m2=5&s=8 <<
Bzh
le 17/02/2005 à 23:23
Bzh
Je suis pas tt à fait d' accor avec toi !!!

<?php 

if( 1==1 ){echo "C' est vrai";}
if(! 1==2 ){echo "C' est pas vrai";}

//1==1 renvoi TRUE
//1==2 renvoie FALSE

// Tout comme la fonction isset()

?>


Maintenant, tu as raison, pour un tt débutant, il est plus logique de tester avec une valeur !!!!

Mais cela complique le code...

<?php 

if(isset($variable)){echo "Variable déclaré"; }

if(TRUE == isset($variable)){echo "Variable déclaré"; }

//comme 1==1, TRUE == isset($variable) renverrait vrai si la variable existe !!! et isset($variable) renverra AUSSI TRUE si elle existe !!!


?>


Donc je comprends pas pkoi se serait du code SALE de ne pas comparer à une valeur !!!

smiley
keitarosan
le 18/02/2005 à 00:00
keitarosan
SALE est peu etre un peu forcé, disont juste plus lisible :)

Quand a la complexité, elle n'existe pas.
Juste que c'est un peu plus long d'écrire le test, lol.
Mais au moins, l'on garde une logique qui reste tout le temps identique. :)

<?php

//Enfin, je précise à ceux qui lirait,
//qu'il n'y a pas de faute a mettre

if (isset($variable))
{
echo ("La variable est définie.");
}

?>


Ne me faite pas dire ce que je n'est pas dit.
Pensez juste que tout le monde n'est pas aussi fort que vous en php, et que d'un script a l'autre, c'est différent, alors dans un même script, si y a des nuance...

Je dirais que c'est comme les "" et ''.
Apparement, niveau perf, ca ne joue pas sauf sur des gros volume de données.
Donc tant qu'a faire, utilisez la meme syntaxe partout, meme si parfois vous mettez des \ pour afficher un " ou ' en plus dans une chaine.
Au moins le noob de base de ne seras pas perdu, et se diras. Tien, lui a un style différent de l'autre.
Et pas, tien, pourquoi il ecrit pas pareil dans son script ??
>> http://projectopensource.free.fr/index.php?m=2&m2=5&s=8 <<
exter666
le 18/02/2005 à 13:24
exter666
merci deja de votre aide et pour en finir avec ce post, n'il a t il pas moyen d'utiliser des boutons plutot que des checkbox??? (le boutton ferait le choix de la methode ainsi que le submit necessaire a l'enregistrement du formulaire)
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
Répondre
LoadingChargement en cours