Supprimer une réservation

Résolu
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009 - 1 mars 2006 à 17:09
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009 - 2 mars 2006 à 11:54
je voudrais supprimer une réservation. mais cette réservation s'effectue sur le batiment, la salle, la date et l'heure. (ex: Batiment C, Salle 103, le 2006-03-08 à 8:00:00)
ces propriétés se trouvent dans deux tables:
labo(IdentLabo, Nbre_de_postes, Batiment, NumSalle)
reservation(#IdentProf, #IdentLabo, Date, Heure_debut, Date_réservation)

J'ai donc fait en deux parties, une avec une liste déroulante laquelle réservation il faut supprimer et l'autre partie la suppression. j'ai toujours comme résultat "erreur de la suppression". qui veut bien m'aider?
voilà le code:

suppreservation.php
<html>

SUPPRESSION D'UNE SALLE

L'affichage se fait par le batiment, numéro de la salle, la date de réservation puis l'heure. Ne vous trompez pas!

<?php
$user= "root";
$host="Localhost";
$password="";
$database="gestion_laboratoire";

$connexion = mysql_connect($host, $user, $password) or die ("Connexion au serveur impossible");
$db = mysql_select_db($database, $connexion) or die ("Sélection de la base de données impossible"); $rq "SELECT Batiment,NumSalle,Date_réservation, Heure_debut FROM labo, reservation WHERE reservation.IdentLabo labo.IdentLabo ORDER BY Batiment, NumSalle, Date_réservation";
$result = mysql_query($rq) or die ("Exécution de la requête impossible");

//création d'un formulaire contenant une liste de sélection
echo "<form action='suppreservation2.php' method='post'>
<select name='Batiment_Salle_Date_réservation_Heure_debut'>\n";

while ($ligne = mysql_fetch_array($result))
{
$valeur=$ligne['Batiment'].'/'.$ligne['NumSalle'].'/'.$ligne['Date_réservation'].'/'.$ligne['Heure_debut'];
echo "<option value='".$valeur."'>".$valeur."</option>\n";
}
echo "</select>\n";
echo "</form>\n";
?>

Attention: votre choix sera radical. Vous ne pourrez pas revenir sur votre décision.

</html>
----------------------------------------------------------------------------------------------------------------------------------------------------
suppreservation2.php

<html>

<?php
//Connexion au serveur
if(!$conn = mysql_connect("Localhost","root","")) { echo ("Prob connexion au serveur"); exit();}
//Connexion a la base de données
$db= mysql_select_db("gestion_laboratoire");
if(!$db) { echo ("Problème de connexion à la base"); exit(); }

$var=explode('/',$_POST['Batiment_Salle_Date_réservation_Heure_debut']);
$batiment=$var[0];
$salle=$var[1];
$Dateréservation=$var[2];
$Heuredebut=$var[3];
$req="delete from reservation, labo where reservation.IdentLabo = labo.IdentLabo and Batiment='$batiment' and NumSalle='$salle' and Date_réservation='$Dateréservation' and Heure_debut='$Heuredebut' ORDER BY Batiment and Batiment='$batiment' and NumSalle='$salle' and Date_réservation='$Dateréservation' and Heure_debut='$Heuredebut'";
$result=mysql_query($req, $conn);
//Recupération des résultats pour la suppression
if($result==1)
echo "suppression réussi";
else
echo "echec de la suppression";
echo "

";
//Déconnexion de la base
mysql_close($conn);
?>
<form>

</form>

</html>

merci de m'aider.

22 réponses

morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
2 mars 2006 à 11:54
j'ai fait quelques modifiacations car en faite il comprenait pas ce qui fallait supprimer finalement (La salle ou la réservation?)

voila ce que j'ai donc fait dans suppreservation2.php

<html>

<?php
//Connexion au serveur
if(!$conn= mysql_connect("Localhost","root","")) { echo ("Prob connexion au serveur"); exit();}
//Connexion a la base de données
$db= mysql_select_db("gestion_laboratoire");
if(!$db) { echo ("Problème de connexion à la base"); exit(); }

$var=explode('/',$_POST['Batiment_Salle_Date_réservation_Heure_debut']);
$batiment=$var[0];
$salle=$var[1];
$Dateréservation=$var[2];
$Heuredebut=$var[3];
$req="delete from reservation where Date_réservation='$Dateréservation' and Heure_debut='$Heuredebut'";
$result=mysql_query($req, $conn);
//Recupération des résultats pour la suppression
if($result==1)
echo "suppression réussi";
else
echo "echec de la suppression";
echo "

";
//Déconnexion de la base
mysql_close($conn);
?>
<form>

</form>

</html>

Dans les tables (moi j'utilises easy php 1.8), il faut bien vérifier les relations au cas où dans la table labo et reservation.
Sinon pas d'affichage meme si l'inscription est faite au niveau de la réservation
salle inconnu au registre, pas d'affichage
3
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 17:30
$result= mysql_query($req, $conn);
$nb=mysql_num_rows($result);
//Recupération des résultats pour la suppression
if($nb ==1)
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 17:37
d'autre part le order by dans un delete n'est pas indispensable...
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 17:39
ta formule ne marche pas!
voici le message
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 17

echec de la suppression
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 17:39
$req="delete from reservation, labo where reservation.IdentLabo = labo.IdentLabo and Batiment='$batiment' and NumSalle='$salle' and Date_réservation='$Dateréservation' and Heure_debut='$Heuredebut'";

je doute un peu de la requete
mais elle ne pouvait pas marcher comme tu l'avais ecrite , anyway
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 17:41
ta requete est fausse, pas ma formule
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 17:42
maintenant y a de nouvelles erreurs

Notice: Undefined variable: Dateréservation in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 15



Notice: Undefined variable: Heuredebut in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 15



Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 17

echec de la suppression
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 17:53
est ce que l'erreur vient pas de la première page avec la requete:
$rq " SELECT Batiment, NumSalle, Date_réservation, Heure_debut <gras>FROM labo, reservation WHERE reservation.IdentLabo </gras> labo.IdentLabo ORDER BY Batiment, NumSalle, Date_réservation, Heure_debut";

j'ai un doute????
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 18:06
je rame...
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 18:12
bon renvoie tout le code alors !
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 18:14
$rq = "SELECT Batiment,NumSalle,Date_réservation,
Heure_debut FROM labo, reservation WHERE reservation.IdentLabo =
labo.IdentLabo ORDER BY Batiment, NumSalle, Date_réservation";



est ce que ta liste déroulante est bien remplie ?
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 18:14
ben je comprends pas pkoi il marque

Notice: Undefined variable: Dateréservation in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 15

alors que je déclare bien dans la première page:
$rq "SELECT Batiment, NumSalle, Date_réservation, Heure_debut FROM labo, reservation WHERE reservation.IdentLabo labo.IdentLabo ORDER BY Batiment, NumSalle, Date_réservation, Heure_debut";
$result = mysql_query($rq) or die ("Exécution de la requête impossible");

//création d'un formulaire contenant une liste de sélection
echo "<form action='suppreservation2.php' method='post'>
<select name='Batiment_Salle_Date_réservation_Heure_debut'>\n";

while ($ligne = mysql_fetch_array($result))
{
$valeur=$ligne['Batiment'].'/'.$ligne['NumSalle'].'/'.$ligne['Date_réservation'].'/'.$ligne['Heure_debut'];
echo "<option value='".$valeur."'>".$valeur."</option>\n";
}
echo "</select>\n";
echo "</form>\n";
?>
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 18:20
ma liste déroulante m'affiche ça sur la première page

c/112/2006-03-10/15:00:00
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
1 mars 2006 à 18:25
c'est tout ce qu'il ya dedans ??

c'est ce que tu veux ??
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 18:27
je veux qui me supprime toute la ligne de réservation du aux 4 critères
2 dans la table labo
2 dans la table reservation
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 20:22
est ce que une autre méthode existe? si oui, laquelle?
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 20:43
je veux qui me supprime toute la ligne dans la table réservation du aux 4 critères
2 dans la table labo
2 dans la table reservation
car il se peut qu'il y est plusieurs salles prisent à 15:00:00 le meme jour dans le batiment c (par exemple)
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
1 mars 2006 à 21:54
Notice: Undefined variable: Dateréservation in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 15



Notice: Undefined variable: Heuredebut in d:\program files\easyphp1-8\www\site internet\reservation\suppreservation2.php on line 15

echec de la suppression

Je ne comprends pas!!!

j'ai bien ca dans ma première partie

suppreservation.php
<html>

SUPPRESSION D'UNE SALLE

L'affichage se fait par le batiment, numéro de la salle, la date de réservation puis l'heure. Ne vous trompez pas!

<?php
$user= "root";
$host="Localhost";
$password="";
$database="gestion_laboratoire";

$connexion = mysql_connect($host, $user, $password) or die ("Connexion au serveur impossible");
$db = mysql_select_db($database, $connexion) or die ("Sélection de la base de données impossible"); $rq "SELECT Batiment, NumSalle, Date_réservation, Heure_debut FROM labo, reservation WHERE reservation.IdentLabo labo.IdentLabo ORDER BY Batiment, NumSalle, Date_réservation, Heure_debut, Date_réservation";
$result = mysql_query($rq) or die ("Exécution de la requête impossible");

//création d'un formulaire contenant une liste de sélection
echo "<form action='suppreservation2.php' method='post'>
<select name='Batiment_Salle_Date_réservation_Heure_debut'>\n";

while ($ligne = mysql_fetch_array($result))
{
$valeur=$ligne['Batiment'].'/'.$ligne['NumSalle'].'/'.$ligne['Date_réservation'].'/'.$ligne['Heure_debut'];
echo "<option value='".$valeur."'>".$valeur."</option>\n";
}
echo "</select>\n";
echo "</form>\n";
?>

Attention: votre choix sera radical. Vous ne pourrez pas revenir sur votre décision.

</html>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
et ca dans ma deuxieme partie

suppreservation2.php
<html>

<?php
//Connexion au serveur
if(!$conn = mysql_connect("Localhost","root","")) { echo ("Prob connexion au serveur"); exit();}
//Connexion a la base de données
$db= mysql_select_db("gestion_laboratoire");
if(!$db) { echo ("Problème de connexion à la base"); exit(); }

$var=explode('/',$_POST['Batiment_Salle_Date_réservation_Heure_debut']);
$batiment=$var[0];
$salle=$var[1];
$dateréservation=$var[2];
$heuredebut=$var[3];
$req="delete from reservation, labo where reservation.IdentLabo = labo.IdentLabo and Batiment='.$batiment.' and NumSalle='.$salle.' and Date_réservation='.$Dateréservation.' and Heure_debut='.$Heuredebut.'";
$result=mysql_query($req, $conn);
//Recupération des résultats pour la suppression
if($result==1)
echo "suppression réussi";
else
echo "echec de la suppression";
echo "

";
//Déconnexion de la base
mysql_close($conn);
?>
<form>

</form>

</html>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
faites le test de votre coté car là, je vois pas pourquoi il veux bien pour batiment et salle mais pas pour date_réservation et heure_debut
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
2 mars 2006 à 11:21
$dateréservation=$var[2];
$heuredebut=$var[3];

$Dateréservation=$var[2];
$Heuredebut=$var[3];

majuscules !!
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
2 mars 2006 à 11:24
résultat échec de la suppression
0
Rejoignez-nous