WrestlingMan
Messages postés78Date d'inscriptionmardi 16 juin 2009StatutMembreDernière intervention17 février 2011
-
12 janv. 2010 à 08:48
Tonio_35
Messages postés567Date d'inscriptionmercredi 4 octobre 2006StatutMembreDernière intervention30 août 2011
-
12 janv. 2010 à 18:35
Bonjour à tous !!
J'espère que vous pourrez m'aider !! J'ai créer un petit formulaire, dans celui-ci on choisi une personne dans une liste déroulante. Dans cette liste déroulante, il y a 3 variables (num, nom, prénom) pour bien identifier une personne . Quand on clic sur supprimer, toutes les infos de cette personne doivent être supprimer de ma base de données.
Maintenant, je n'arrive pas à mettre dans une variables par la méthode POST, une des variables de ma liste déroulante (le num). Voici les codes de mes deux pages !!
Le code du formulaire :
Modification ou suppression des informations des bénévoles
<center>
<select name='ld_benevole' >
<?php
require('Connect.php');
mysql_connect(SERVEUR, NOM, MDP) or die ('erreur de connexion au serveur my sql : '.SERVEUR);
mysql_select_db(BASE) or die ('erreur de connexion à la base de données : '.BASE);
$sql="select NumBenevole, NomBenevole, PrenomBenevole from t_benevoles;";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result))
{
$variable1 = $row['NumBenevole'];
$variable2 = $row['NomBenevole'];
$variable3 = $row['PrenomBenevole'];
echo'<option>'.$variable1;
echo(" ");
echo $variable2;
echo(" ");
echo $variable3;
echo'</option>';
}
?>
</select>
Maintenant, voici le code réaliser pour l'exécution de la suppression :
<?php
//appel au fichier "Connect.php" intégrant les constantes de connexion à la BDD
require('Connect.php');
//récupération des données du formulaire de la page "Nvo_Benevol.php"
$code = $_POST["ld_benevole"];
//connexion au serveur Mysql
mysql_connect(SERVEUR, NOM, MDP) or die ("erreur de connexion au serveur my sql : ".SERVEUR);
//selection de la BDD
mysql_select_db(BASE) or die ("erreur de connexion à la base de données : ".BASE);
//création de 2 requêtes permettant l'insertion du CodeFonction et du CodeCentre
$sql="";
//echo($sql);
//vérification qu'il a bien un résultat
if (mysql_num_rows($sql)>0)
{
while ($CodeBenevole=mysql_fetch_array($sql))
{
//création de la requete de suppression
//exécution de la requete
mysql_query($insertion);
}
}
//retour vers la page Ad_CreationNews.php
header("location:accueil.php");
?>
J'espère que c'est assez lisible et que vous pourrez m'aider !!
A voir également:
Suppression sur une bd mysql à partir d'un bouton (php) !!
WrestlingMan
Messages postés78Date d'inscriptionmardi 16 juin 2009StatutMembreDernière intervention17 février 20111 12 janv. 2010 à 09:24
AMerci !! Effectivement c'était une erreur de ma part !! Mais cela ne résous pas mon problème !! Maintenant, en faisant un echo de ma variable $code, dans le code pour la suppression, j'obtiens ceci :
3 Kervarec Tristan
Notice: Undefined variable: sql in C:\wamp\www\RestosDuCoeur\suppression_exec.php on line 14
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result ressource in C:\wamp\www\RestosDuCoeur\suppression_exec.php on line 14
Je ne vois toujours pas comment mettre le code(3) en variable, sachant qu'il est avec deux autres variables dans ma liste déroulante.
As-tu une idée à me suggérer pour résoudre mon problème !!!???
Tonio_35
Messages postés567Date d'inscriptionmercredi 4 octobre 2006StatutMembreDernière intervention30 août 201111 12 janv. 2010 à 09:55
Alors, regarde tes "erreurs" indiquées par php :
Notice: Undefined variable: sql in C:\wamp\www\RestosDuCoeur\suppression_exec.php on line 14
Notice = Information, pour débugage
Undefined variable: sql = Une variable est indéfinie mais utilisée (ici $sql)
C:\wamp\www\RestosDuCoeur\suppression_exec.php on line 14 = Dans le fichier suppression_exec.php sur la ligne 52
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result ressource in C:\wamp\www\RestosDuCoeur\suppression_exec.php on line 14
Warning = La encore ce n'est pas une erreur qui bloque le déroulement de l'application mais c'est une erreur sur la ligne, les resultats serons donc fossés
mysql_num_rows() supplied argument is not a valid MySQL result ressource = La c'est l'erreur, elle dit que ta requete semble incorrect (Probablement du à l'erreur du dessus vu que $sql est vide...)
Maintenant le bout de code à pb :
<?php
//création de 2 requêtes permettant l'insertion du CodeFonction et du CodeCentre
$sql="";
//echo($sql);
//vérification qu'il a bien un résultat
if (mysql_num_rows($sql)>0)
{
while ($CodeBenevole=mysql_fetch_array($sql))
{
//création de la requete de suppression
//exécution de la requete
mysql_query($insertion);
}
}
?>
Pourquoi ce mysql_num_rows($sql)>0 ? Sachant que tu as vidé $sql juste au dessus...
_________________________________
Min iPomme
Vous n’avez pas trouvé la réponse que vous recherchez ?
WrestlingMan
Messages postés78Date d'inscriptionmardi 16 juin 2009StatutMembreDernière intervention17 février 20111 12 janv. 2010 à 10:14
D'accord, faute d'inattention, je vais de ce pas corrigé sa !! Mais une dernière question, et merci de m'accorder de ton temps !! La question qui me t'arrode l'esprit c'est : j'ai 3 variables dans ma liste déroulante mais je ne veux qu'une seul de ces variables pour faire ma requête, c'est à dire le numéro !!!! Que dois-je faire ????? Comment puis-je préciser que c'est telle variable de telle liste déroulante que je veux mettre dans une autre variable par la method POST ??????,
Tonio_35
Messages postés567Date d'inscriptionmercredi 4 octobre 2006StatutMembreDernière intervention30 août 201111 12 janv. 2010 à 10:27
Un select se construit comme ca :
<select name="toto">
<option value="1">1 Chuck Norris</option>
<option value="2">2 Steven Seagal</option>
</select>
Si l'utilisateur sélectionne "1 Chuck Norris" (en même temps ce serait prendre un grand risque que de sélectionner autre chose
), la variable $_POST['toto'] contiendras juste 1 (Le contenu du value de l'option)...
WrestlingMan
Messages postés78Date d'inscriptionmardi 16 juin 2009StatutMembreDernière intervention17 février 20111 12 janv. 2010 à 10:35
Je sais je suis chiant !!
Avec ce code :
<?php
//appel au fichier "Connect.php" intégrant les constantes de connexion à la BDD
require('Connect.php');
//récupération des données du formulaire de la page "Nvo_Benevol.php"
$code = $_POST["ld_benevole"];
//echo ($code);
//connexion au serveur Mysql
mysql_connect(SERVEUR, NOM, MDP) or die ("erreur de connexion au serveur my sql : ".SERVEUR);
//selection de la BDD
mysql_select_db(BASE) or die ("erreur de connexion à la base de données : ".BASE);
//création de la requete de suppression
$suppression ="delete from t_benevoles where NumBenevole='$code';";
echo($suppression);
//exécution de la requete
//mysql_query($suppression);
//retour vers la page Ad_CreationNews.php
//header("location:accueil.php");
?>
Et en faisant l'echo de ma requête, j'obtient ceci :
delete from t_benevoles where NumBenevole='3 Kervarec Tristan';
Or c'est juste 3 que je veux préciser comme num !!