Effacer ligne base de données
21 messages
• Page 1 sur 2 • 1, 2
- Stefano
- WRInaute occasionnel

- Messages: 273
- Inscription: 12 Fév 2006
Effacer ligne base de données
Bonjour,
Je préviens que je suis un autodidacte (encore niveau débuttant) en php.
Voici mon problème j'ai créé un petit script php avec un formulaire pour pouvoir mettre en ligne des actualités.
Il marche très bien. Or, pour l'instant dès que l'événement est passé je me connecte à la base de données et je l'efface manuellement. Mais ce n'est pas très pratique. Je pensais donc créer un petit formulaire où écrire l'id de l"actualité à effacer.
Voici mes problème :
le petit script pour effacer, pourtant banale ne marche pas du tout :
Il se connecte bien à la base de données mais :
- il n'efface rien du tout. Si je remplace '$id' par l'id de l'actu à supprimer rien ne se passe. Et pourtant le même script avec select affiche les infos de cette table.
- deuxième gros problème. Si j'arrive à faire marche cette instruction, je ne sais pas comment relier ce script à un formulaire pour que je lui donne l'id à supprimer.
Si vous avez des suggestions, je vous en remercie par avance.
Je préviens que je suis un autodidacte (encore niveau débuttant) en php.
Voici mon problème j'ai créé un petit script php avec un formulaire pour pouvoir mettre en ligne des actualités.
Il marche très bien. Or, pour l'instant dès que l'événement est passé je me connecte à la base de données et je l'efface manuellement. Mais ce n'est pas très pratique. Je pensais donc créer un petit formulaire où écrire l'id de l"actualité à effacer.
Voici mes problème :
le petit script pour effacer, pourtant banale ne marche pas du tout :
- Code: Tout sélectionner
<?php
define('CONF_ONLY', true);
include("./config.php");
mysql_connect($dbhost , $dbuser , $dbpasswd);
mysql_select_db($dbname);
$sql = 'DELETE * FROM `t_mus` WHERE `idann` ='$id' ;';
$result = mysql_query($sql);
if($result)
{
echo("La suppression à été correctement effectuée") ;
}
else
{
echo("La suppression à échouée") ;
}
mysql_close();
?>
Il se connecte bien à la base de données mais :
- il n'efface rien du tout. Si je remplace '$id' par l'id de l'actu à supprimer rien ne se passe. Et pourtant le même script avec select affiche les infos de cette table.
- deuxième gros problème. Si j'arrive à faire marche cette instruction, je ne sais pas comment relier ce script à un formulaire pour que je lui donne l'id à supprimer.
Si vous avez des suggestions, je vous en remercie par avance.
-

BadProcESs - WRInaute accro

- Messages: 2657
- Inscription: 28 Juil 2003
As-tu un message d'erreur ?
As-tu essayé de tester la requête dans l'administration de la base de données ?
As-tu essayé de tester la requête dans l'administration de la base de données ?
- Stefano
- WRInaute occasionnel

- Messages: 273
- Inscription: 12 Fév 2006
il te suffit de faire echo $sql en php pour voir ton erreur
Merci,
Mais rien ne s'affiche. Voilà tout le code dans post.php:
- Code: Tout sélectionner
<?php
include("/config.php");
// Insertion dans la base
$id = $_GET["idann"];
mysql_connect($dbhost , $dbuser , $dbpasswd);
mysql_select_db($dbname);
$sql = 'DELETE FROM `t_mus` WHERE `idann` =$id LIMIT 1;';
$result = mysql_query($sql);
if($result)
{
echo("La suppression à été correctement effectuée") ;
}
else
{
echo("La suppression à échouée") ;
}
mysql_close();
?>
Il ne reconnait pas idann, car si je remplace le bon chiffre
ça marche.
L'idann est fourni par un formulaire :
- Code: Tout sélectionner
<form name="f2" onSubmit="return check2()" METHOD="POST" ACTION="form.php">
<table border=0 cellpadding=3 width="549" align="center" cellspacing="0" bgcolor="#e8e8e8">
<tr>
<td width="144"><span style="font-size: 10pt;"><font face="Arial"><b>ID</b> :</td>
<td width="387">
<input type="text" name="idann" value="" size=30>
</td>
</tr>
<tr>
<td width="144">
<input type="reset" name="reset" value="Effacer">
</td>
<td align=RIGHT width="387">
<input type="submit" name=" O K " value=" OK ! ">
</td>
</tr>
</table>
</form>
Peut-être que le problème est là .
Est-ce la fonction $_get qui récupère l'information ?
Merci encore.
- mahdivitche
- WRInaute impliqué

- Messages: 967
- Inscription: 6 Jan 2008
peut étre le probleme dans la relation des tables
-

seebz - WRInaute impliqué

- Messages: 808
- Inscription: 15 Avr 2007
Simple quote , double quote !
- Code: Tout sélectionner
$sql = "DELETE FROM `t_mus` WHERE `idann`=$id";
- Stefano
- WRInaute occasionnel

- Messages: 273
- Inscription: 12 Fév 2006
Tu vas la mettre ta requete dans phpmyadmin ou pas ? lol
Oui, je l'ai fait et donc ce n'est pas un problème de requête :
.As-tu essayé de tester la requête dans l'administration de la base de données ?
DELETE FROM `t_mus` WHERE `idann` =6
comme ça, ça marche...
$sql = 'DELETE FROM `t_mus` WHERE `idann` =$id LIMIT 1;';
apres ca tu met : echo $sql;
DELETE FROM `t_mus` WHERE `idann` =$id LIMIT 1;La suppression à échouée
$id = $_GET["idann"];
PAR
$id = $_POST["idann"];
très bonne suggestion car si je mets echo $id apparait le bon chiffre donc on est sur la bonne voie et je me demande pourquoi quand il se trouve après idann= il n'est pas remplacé
21 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- base de données pour annuaire télephonique en ligne
- importation de données dans base de données
- Base de données de Google Base
- base de donnees
- Suppression Base de données
- achat de base de données
- Valeur base de données HELP !
- Base de données ville/IP
- Conception base de données
- Logiciel Base de données
Consultez la description détaillée des produits ou services de Google suivants : Google Base
- Test de positionnement sur data centers
Cet outil vous permet d'afficher sur une seule page les résultats Google effectués sur de nombreux data centers (centres de données). - Suggestion de mots-clés Google
Cet outil vous permet d'obtenir une liste de 10 mots ou expressions suggérés par Google sur la base d'un mot que vous fournissez.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


