Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/05/2008, 14h52   #1
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Par défaut Radio et MYSQL

Bonjour chers développeurs,

J'aurais besoin d'une petite aide.
Je cherche à supprimer un enregistrement de ma BDD avec soit une radio, soit un bouton sa m'est égal ( de préférence une radio quand même )
Je vous montre le code avec lequel j'ai commencer mais qui ne marche pas.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<form method="post" action="info_perso.php">
	<label><input type="radio" name="oui" />Oui</label>
	<label><input type="radio" name="non" />Non</label>
		   <input type="submit" value="Supprimer ce site">
</form><br>
 
  <?php
if (isset($_POST['oui']) && !empty ($_POST['non']))
{ 
$nom_site = $_POST['nom_site'];
$mysql_link = mysql_connect("localhost", "root", "");
$connexion = mysql_select_db("daher");
$result = mysql_query("DELETE FROM referentiel_mpls_daher WHERE `nom_site`='".mysql_real_escape_string($nom_site)."'");
$result = mysql_query($requete);
} 
?>
Le code ici supprime tous les texte présent dans ma BDD que je fais afficher sur ma page. Ensuite quand je reviens sur la page, les texte sont revenus.
On voit aussi dans la barre d'adresse que cette requête supprime ma variable que je transmet sur cette page.
Si je n'est pas été clair, j'essayerai de donner plus de détails à vos questions.

Je précise pour le code que la variable $nom_site est justifié dans ce code.
Je précise que je suis un total débutant en plein apprentissage alors desolé si vous trouvez peut-être des abérations dans mon code.
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 16h40   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 453
Points : 5 453
Bonjour

Je crois que tu as un petit souci au niveau de la définition des boutons radio. Un groupe de boutons radio forme un groupe de choix possibles, dont un seul est sélectionnable à la fois. Pour former un groupe de radios, il faut leur donner à tous le même nom et des valeurs différentes...
Donc :
Code html :
1
2
3
4
5
<form method="post" action="info_perso.php">
	<input type="radio" name="supprimer" value="oui"/><label>Oui</label>
	<input type="radio" name="supprimer" value="non"/><label>Non</label>
		   <input type="submit" value="Supprimer ce site">
</form><br>

Code :
1
2
3
4
5
6
7
8
9
<?php
if (isset($_POST['supprimer']) && $_POST['supprimer']=='oui')
{ 
$nom_site = $_POST['nom_site'];
$mysql_link = mysql_connect("localhost", "root", "");
$connexion = mysql_select_db("daher");
$result = mysql_query("DELETE FROM referentiel_mpls_daher WHERE `nom_site`='".mysql_real_escape_string($nom_site)."'");
} 
?>
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 16h46   #3
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
J'ai modifié mon code avec le tien, mais cela fait toujours la même chose ...
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 16h48   #4
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
D'où ça sort nom_site ?
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 16h53   #5
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Excusez-moi, j'ai virez "$_POST['nom_site']" , c'était un bout que j'ai oublier de virer après avoir tenter quelque chose pour solutionner mon problème.
Sorry .

Ensuite le nom_site dans ma requête SQL, c'est une variable que j'avais converti après une transmission de variable.
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 09h39   #6
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
C'est quoi $requete ?

Bref reposte un code corrigé.

Et teste ta requête en dur sous phpMyAdmin ou un outil du genre.
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 09h44   #7
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Hum ... $requete c'est encore une erreur de ma part que Celira a corriger elle même ...
Mince jsuis vraiment nul

Voici now le code actuel :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<form method="post" action="info_perso.php">
	<input type="radio" name="supprimer" value="oui"/><label>Oui</label>
	<input type="radio" name="supprimer" value="non"/><label>Non</label>
		   <input type="submit" value="Supprimer ce site">
</form><br>
 
<?php
if (isset($_POST['supprimer']) && $_POST['supprimer']=='oui')
{
$mysql_link = mysql_connect("localhost", "root", "");
$connexion = mysql_select_db("daher");
$result = mysql_query("DELETE FROM referentiel_mpls_daher WHERE `nom_site`='".mysql_real_escape_string($nom_site)."'");
} 
?>
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 09h48   #8
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
...

C'est quoi $nom_site ?
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h13   #9
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Sa s'est la variable qui contient le nom du site avec lequel je travaille.

Citation:
Ensuite le nom_site dans ma requête SQL, c'est une variable que j'avais converti après une transmission de variable.
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h14   #10
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
echo "DELETE FROM referentiel_mpls_daher WHERE `nom_site`='".mysql_real_escape_string($nom_site)."'");

affiche quoi ?
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h27   #11
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Sa affiche bien la requête mais la variable est vide
Le problème ne vient donc pas du formulaire car quand je clique sur non, cela ne m'affiche rien, et quand je clique sur oui, il m'affiche la requête.

J'ai essayer d'enlever le mysql_real_escape_string mais cela n'a rien changer.

Pourtant cela devrait marcher puisque plus bas dans le code, j'utilise aussi cette variable et cela marche parfaitement ...
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h31   #12
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Ah non en faite je sais pourquoi la variable est vide, c'est parce que j'utilisais le formulaire de suppression pour ensuite afficher ma requête.
Comme le formulaire supprime ma variable, c'est normal qu'ensuite elle n'affiche rien, je retire ce que j'ai dit plus haut, la requête fonctionne.

Mais on revient au point de départ ...
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h40   #13
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
Si quand tu fais le echo elle est vide, alors la requête s'exécutera avec la valeur vide aussi. Montre où tu initialises $nom_site.
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h48   #14
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
J'initialise ma variable juste en haut du formulaire, je l'a met ici pck juste après j'ai placé un lien ou je transmet aussi cette variable.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<?php
$nom_site = $_GET['nom_site'];
?>
<a href="modifier_reference.php?nom_site=<?php echo $nom_site ?>">Modifier</a><br><br>
<a href="portail.php"><img src="fleche.jpg" width="40" height="30"/></a><br><br><br>
<form method="post" action="info_perso.php">
	<input type="radio" name="supprimer" value="oui"/><label>Oui</label>
	<input type="radio" name="supprimer" value="non"/><label>Non</label>
		   <input type="submit" value="Supprimer ce site">
</form><br>
 
<?php
if (isset($_POST['supprimer']) && $_POST['supprimer']=='oui')
{
$mysql_link = mysql_connect("localhost", "root", "");
$connexion = mysql_select_db("daher");
$result = mysql_query("DELETE FROM referentiel_mpls_daher WHERE `nom_site`='".mysql_real_escape_string($nom_site)."'");
} 
?>
Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 11h17   #15
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 453
Points : 5 453
Tu peux renvoyer la valeur par un champ caché dans le formulaire et la re-récupérer dans la boucle....
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 11h52   #16
Membre du Club
 
Avatar de Archibald_Teepo
 
Étudiant
Inscription : mai 2008
Messages : 102
Détails du profil
Informations personnelles :
Âge : 20
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2008
Messages : 102
Points : 40
Points : 40
Envoyer un message via MSN à Archibald_Teepo
Je vous remercie beaucoup de votre aide, mais j'ai trouvé une autre solution.
Sa fait un peu sale mais bon j'ajusterai plus tard.

Je vous remercie encore de m'avoir donné de votre temps pour tenter de solutionner mon problème.

Je vous souhaite une très bonne journée et ptete ( surement ) à une prochaine fois !

Archibald_Teepo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h37.


 
 
 
 
Partenaires

Hébergement Web