begin process at 2012 05 31 20:06:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

Switch et php 5


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Switch et php 5

vendredi 3 septembre 2004 à 21:53:49 | Switch et php 5

cseagle

Membre Club
bonsoir à toutes et à tous,

voila mon souci :

J'ai une page d'inscription avec un formulaire qui renvoi après validation vers cette même page contenant un switch($action).
Mon problème est que si je ne défini pas $action avant le switch il me balanche un message d'erreur, si je la déclare vide il prend rien quand le formulaire est validé et si je lui donne une valeur POST[variable] il me balance une erreur quand le form a pas été envoyé.

Je sais pas si je suis clair mais ma question est :

Comment déclarer cette variable $action sans bloquer le formulaire et sans message d'erreur ???

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

Détail en dessous

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

<?php
switch($action) {

case "add";

......

break;


default;

echo "Inscription Membre
<form action=\"inscription.php\" method=\"post\">
<input type=\"hidden\" name=\"action\" value=\"add\">

.....";
break;
}
?>

Mon souci c'est que comme cela, lorsque $action n'est renseigné il me balance :

Notice: Undefined variable: action in inscription.php on line 20
qui correspond au switch($action){

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

<?php

$action = ' ';

switch($action) {

case "add";

......

break;


default;

echo "Inscription Membre
<form action=\"inscription.php\" method=\"post\">
<input type=\"hidden\" name=\"action\" value=\"add\">

.....";
break;
}
?>

Mon souci c'est que comme cela, il me recharge le formulaire vierge et sans faire le switch

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

<?php
$action = $_POST["action"];

switch($action) {

case "add";

......

break;


default;

echo "Inscription Membre
<form action=\"inscription.php\" method=\"post\">
<input type=\"hidden\" name=\"action\" value=\"add\">

.....";
break;
}
?>

Mon souci c'est que comme cela, lorsque $action n'est renseigné il me balance :

Notice: Undefined index: action in inscription.php on line 20
qui correspond au $action = $_POST["action"];
vendredi 3 septembre 2004 à 23:33:31 | Re : Switch et php 5

Chouchou182

Salut

Utilise la fonction isset($variable)
pour savoir si la variable est déclarée.
Sinon affiche le form vide.

A++

Chouchou
vendredi 3 septembre 2004 à 23:42:59 | Re : Switch et php 5

gibozsec

Exact, le paramètre doit etre $_POST["tavariable"], pas ta variable elle même.


Grrrrrrrrrrr
samedi 4 septembre 2004 à 08:59:49 | Re : Switch et php 5

cseagle

Membre Club
Bon alors voila ce que j'ai fait qui ne fonctionne pas mieux :


1er essai


<?php

if(isset($action)) {
$action = $_POST["action"];

switch($action) {
/*-----------------------------------------------------------------*/
/* AJOUT DANS MySQL */
/*-----------------------------------------------------------------*/

case "add";
..............;
break;
} // Fin du Switch

} else { // Sinon on affiche le formulaire

} // Fin du If


Il m'affiche le formulaire mais lorsque je valide ne fait pas le switch (donc action n'est pas défini)


2eme essai


<?php
$action = $_POST["action"];
if(isset($action)) {


switch($action) {
/*-----------------------------------------------------------------*/
/* AJOUT DANS MySQL */
/*-----------------------------------------------------------------*/

case "add";
..............;
break;
} // Fin du Switch

} else { // Sinon on affiche le formulaire

} // Fin du If


Il m'affiche le formulaire et :
Notice: Undefined index: action in inscription.php on line 20
soit $action = $_POST["action"];


3eme essai


<?php

if(isset($action)) {

switch($action) {
/*-----------------------------------------------------------------*/
/* AJOUT DANS MySQL */
/*-----------------------------------------------------------------*/

case "add";
..............;
break;
} // Fin du Switch

} else { // Sinon on affiche le formulaire

} // Fin du If


Il m'affiche le formulaire mais lorsque je valide ne fait pas le switch (donc action n'est pas défini)
samedi 4 septembre 2004 à 09:44:50 | Re : Switch et php 5

Chouchou182

Réponse acceptée !
Hello
4eme essai :



<?php

if(isset($_POST["action"])) {
$action = $_POST["action"];

switch($action) {
/*-----------------------------------------------------------------*/
/* AJOUT DANS MySQL */
/*-----------------------------------------------------------------*/

case "add";
..............;
break;
} // Fin du Switch

} else { // Sinon on affiche le formulaire

} // Fin du If


Une variable nomée name (name est un nom arbitraire que j'utilise pour l'exemple) transmise par un formulaire est stockée dans le tableau $_POST['name'] si l'action du form est positoinnée à post ou dans $_GET['name'] si l'action est sur get.

De plus, selon la configuration du serveur, la variable transmise via le formulaire peut être directement dans $name ; mais ce n'est pas toujours le cas.

Donc utiliser $_GET et $_POST.

A++

Chouchou
samedi 4 septembre 2004 à 10:05:09 | Re : Switch et php 5

cseagle

Membre Club
Merci beaucoup c'est ça, ça fonctionne impec.

Encore merci
samedi 4 septembre 2004 à 15:20:34 | Re : Switch et php 5

gibozsec

:) Je t'avais préciser d'utiliser $_POST["tavariable"] comme paramètre.


Grrrrrrrrrrr


Cette discussion est classée dans : php, formulaire, action, souci, switch


Répondre à ce message

Sujets en rapport avec ce message

html ep php [ par manueg ] Bonjour, je débute en déve PHP et je me pose les questions suivantes....J'utilise Dreamweaver et EasyPHP et ApacheMon approche est la suivante: je fai pbs de variables dans une zone admin [ par attentio ] salut !!!!voila mon probleme j'ai une premiere page (formulaire.php) qui me permet de recuperer des données afin de les modifier, supprimer ou ajoute Une action de formulaire variable [ par Bartheleway ] Bonjour, je me demandais si une action de formulaire pouvais être variable ???Le code que j'ai réalisé :$envoie="admin.php";}if ($_GET['choix']=='bart Problème d'action dans un formulaire [ par gretata ] bonjour a tous !! voila j'ai une ereur sur l'action de la page de mon formulaire l'ereur :You don't have permission to access /espac Changer l'action d'un formulaire de recherche en PHP [ par JABE ] Bonjour,Je cherche un moyen de changer l'action d'un formulaire de recherche en PHP.Exemple de code HTML:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 lien formulaire/bdd mysql [ par arkonara ] Bonjour a tous !! Mon problème est le suivant: J'ai un formulaire html avec des saisie possibles ( je fait dans un premier temps un controle de saise formulaire d'insertion/modification/suppression php/sql [ par leagcy ] Bonjour tout le monde, j'ai un petit souci, d'où ma venue ici.Je suis dans une équipe d'un jeu vidéo online, et j'aimerai faire une page Team.J'aimera PHP : une requete de selection(besoin d'aide) [ par info3licen ] Bonjour tout le monde;j'ai fait un formulaire et je travaille avec php le formulaire c'est pour un enseignant il fait entrer son matricule et son suje problème de formulaire php [ par lenfanta ] script Formulaire d'insertion et de recherche PHP MYSQL [ par ChrisColumbus ] Bonjour,Je réalise actuellement le site d'une association juridique africaine non gouvernemental sous Joomla. Vous l'aurez compris je ne suis pas du t


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales