Formulaire dynamique et $php_self

[Résolu]
Signaler
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012
-
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012
-
Bonjour !

Je dois créer un site web qui permettra de faire l'interface entre l'utilisateur et une base de données SQL. Ce site concerne le réseau d'un Lycée. Je suis en train de créer une page permettant de modifier les informations d'une prise réseau.

J'aimerai avoir un champ de saisie dans lequel il faudrait saisir le numéro de la prise à modifier et qu'au clik sur valider des champs de texte s'affichent contenant les infos concernant la prise qui auront été cherché dans la base à l'aide d'une requête.

Le problème que j'ai est le suivant :

Pour remplir mes champs j'utilise la variable $prise qui a été envoyé par $php_self sauf que avant d'avoir saisi le numéro et validé j'ai un message d'erreur me disant undefined variable...

Comment puis-je faire ?

Merci de votre aide

9 réponses

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
24
$prise=$_POST['prise'];
if (isset($prise))

C'est quoi ça...? Isset () sert à savoir si une variable est définie ou non.
Le problème est sur $_POST['prise']; pas sur la variable que TU déclares!

if (isset ($_POST['prise'])) {...}

Ensuite, c'est $_SERVER['PHP_SELF'] et pas $php_self.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
24
Hello,

vas voir du côté de isset ()
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
5
code du formulaire ??
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012

<?
include('connexion.php');
?>
Bonjour !

J'ai essayé comme suit avec isset() mais il me met toujours le message d'erreur undefined variable...


MODIFICATION D'UNE PRISE



<form action= "<?=$_SERVER['PHP_SELF'];?>" target="mainFrame" method="post">





<?

$prise=$_POST['prise'];
if (isset($prise))

{
$requete1="select P.etiquette,S.nom_salle,T.term,R.nom_repart,P.commentaires_prise,P.num_swt,V.nom_vlan from prise as P, repartiteur as R, terminal as T, salle as S, vlan as V where P.num_salle = S.num_salle and P.num_terminal = T.num_terminal and P.num_repart = R.num_repart and P.num_vlan = V.num_vlan and etiquette like '$prise';";
echo "
Informations sur la prise $prise
";
echo '
';
echo '----
Etiquette |Salle |Terminal |Répartiteur |Switch |Vlan |Commentaires |';
$resultat1 = mysql_query($requete1) or exit(mysql_error() . \"
$requete1\");
$ligne1=mysql_fetch_assoc($resultat1);

while($ligne1)
{
echo \"----
".$ligne1["etiquette"].", ".$ligne1["nom_salle"].", ".$ligne1["term"].", ".$ligne1["nom_repart"].", ".$ligne1["num_swt"].", ".$ligne1["nom_vlan"].", ".$ligne1["commentaires_prise"].", \";
$ligne1=mysql_fetch_assoc($resultat1);
}
echo "

";

}

else
{

}
?>
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
5
il ne manquerait pas deux '>' la dis donc !

sans regarder plus loin
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
5
$requete1="select P.etiquette,S.nom_salle,T.term,R.nom_repart,P.commentaires_prise,P.num_swt,V.nom_vlan from prise as P, repartiteur as R, terminal as T, salle as S, vlan as V where P.num_salle = S.num_salle and P.num_terminal = T.num_terminal and P.num_repart = R.num_repart and P.num_vlan = V.num_vlan and etiquette like '$prise' ; ";

le point virgule en gras est de trop a mon avis
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012

Merci pour ces renseignements mais cela ne résoud toujours pas mon pb...
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
24
Tu mets ton formulaire, puis ton code de traitement de suite après.
Evidemment que tu vas avoir une erreur, puisque la 1ère fois que tu arrives sur la page, le formulaire n'est pas soumis, DONC
ton post n'existe pas. Logique, non ? C'est pour ça que tu dois tester l'existe,nce de tes post avec isset ().
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012

Merci j'ai réussi.