Supprimer une musique d'une page internet [Résolu]

Signaler
Messages postés
46
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
5 mai 2010
-
Messages postés
46
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
5 mai 2010
-
Bonjour,

Dans un premier temps, j'ai fait en sorte que lorsque je me trouve sur l'interface admin de mon site, je puisse choisir une musique pour chaque page.

Je suis en train de faire en sorte de pouvoir supprimer cette musique. Dans un premier temps, j'affiche toutes les musiques(précision 'musique'est un boolean qui indique si oui ou non il y a de la musique, et 'nom_musique' le nom de la musique:

<?php
include('config.php');
mysql_connect($serveur,$loginsql,$passsql);
mysql_select_db("$base");
$id= $_GET["id_page"];
$TableRep=mysql_query("select nom_musique, titre_page, id_page from pages where musique='1' order by id_page");

mysql_close();
?>

<th>Page</th>
<th>Musique</th>
<th>Supprimer</th>
</tr>
<?php $NombreEntrees=mysql_NumRows($TableRep);
if ($NombreEntrees==0) { echo "<tr><td colspan="2"> > Aucune musique enregistrée </td></tr>"; }
$i =0;

while ($i<$NombreEntrees) {
$titre_page=mysql_result($TableRep,$i, "titre_page");
$id_page=mysql_result($TableRep,$i, "id_page");
$resultat=mysql_result($TableRep,$i, $id);
$nom_musique=mysql_result($TableRep,$i,"nom_musique");
echo "<tr><th>$titre_page</th><th>$nom_musique</th><th></th></tr>";
$i++;
}
?>
ça, aucun soucis ça fonctionne...
Ensuite je fais en sorte que la musique sélectionnée apparaisse avec l'option effacer:

<form name="ajout" action="gestion-efface-fiche.php" method="post" enctype="multipart/form-data">

Musique :
<?php echo $nom_musique;?>






</form>

Et enfin je l'efface de la base de donnée mais attention je ne peut pas faire un DELETE FROM parce que musique et nom_musique ne sont que des champs dans la table page:

<?php
$id_page=$_POST["id_page"];
include("config.php");
mysql_connect($serveur,$loginsql,$passsql);
mysql_select_db("$base");
$musique='0';
$nom_musique='';
$query=mysql_db_query("$base","UPDATE pages SET musique = $musique , nom_musique = $nom_musique WHERE id_page =$id_page ;");
mysql_close();
?>

9 réponses

Messages postés
112
Date d'inscription
jeudi 31 août 2006
Statut
Membre
Dernière intervention
3 février 2011

Yep !

$query=mysql_db_query("$base","UPDATE pages SET musique = $musique , nom_musique = $nom_musique WHERE id_page =$id_page ;");


dans la ligne de code ci-dessus, je pense qu'il existe une erreur...

essaye déjà avec ça :

$query mysql_db_query("$base", "UPDATE pages SET musique $musique, nom_musique = $nom_musique WHERE id_page = $id_page"); 


Sinon, toujours pas de message d'erreur ?

++
Messages postés
112
Date d'inscription
jeudi 31 août 2006
Statut
Membre
Dernière intervention
3 février 2011

Saloperi de bbcode...

Je voulais insister sur le ; inclut dans la requête

ceci :

$query mysql_db_query("$base", "UPDATE pages SET musique $musique, nom_musique = $nom_musique WHERE id_page = $id_page ;");

devient :

$query mysql_db_query("$base", "UPDATE pages SET musique $musique, nom_musique = $nom_musique WHERE id_page = $id_page ");

C'est tout à la fin de ton code.

bat
Messages postés
112
Date d'inscription
jeudi 31 août 2006
Statut
Membre
Dernière intervention
3 février 2011

Salut,

Si tu veux supprimer une entrée de la table, c'est obligatoirement avec l'instruction DELETE...

Là tu utilises UPDATE... ??? UPDATE met à jour mais ne supprime pas.

Avec DELETE il faut faire attention de préciser l'entrée que l'on veux effacer dans la table sinon, on supprime l'ensemble des entrées de celle-ci.

Donc,

DELETE FROM table WHERE y = x;

table = la table de la bdd.

y = un des champ permettant d'identifier l'entrée concernée (exemple le champs id)

x = la valeur du champ y.

Donc,

DELETE FROM pages WHERE id_page = $id_page;

($id_page doit être obligatoirement unique).

Sauvegarde la base avant de faire un essai.

Ceci ne supprimera pas le fichier du serveur...

J'espère avoir su t'aider et ne pas être à coté de la plaque...
Messages postés
46
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
5 mai 2010

j'utilise UPDATE car les valeur musique et nom_musique son uniquement des champs de la table pages.
Messages postés
112
Date d'inscription
jeudi 31 août 2006
Statut
Membre
Dernière intervention
3 février 2011

J'avoue que je ne comprends pas trop de quoi à tu peur ou quelles est la raison pour ne pas utiliser DELETE alors que c'est la seule commande qui permet la suppression ?
Messages postés
46
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
5 mai 2010

Dans ma table pages, il y a id_page, titre_page, musique et nom_musique, je ne veux surtout pas supprimer la page que je crée je veux juste mettre a jour les champs nom_musique et musique si j'enlève la musique ou si je la remet...
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Juste en passant :
mysql_db_query() est dépréciée et elle ne doit plus être utilisée.
Cf PDO ou mysqli


Cordialement,


Kohntark -
Messages postés
112
Date d'inscription
jeudi 31 août 2006
Statut
Membre
Dernière intervention
3 février 2011

C'est totalement vrai... j'ai pas fais attention...

Depuis que je suis passé à PDO l'année passée, je ne jure plus que pars çà et j'oublie le reste...
Messages postés
46
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
5 mai 2010

Merci pour votre aide!!!