Script mise a jour php
Résolu
chinoutoure
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
chinoutoure Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
chinoutoure Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai ces deux scripts :
emprunt.html
<form method="post" action="emprunt.php" >
<table boreder="1" width="400" align="center">
<tr>
<td width="200"><b>ISBN</b></td>
<td width="200"><input type="text" name="ISBN"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit" value="Soumettre"></td>
</tr>
</table>
</form>
c'est un formulaire qui permet de mettre à jour le nbr d'exemplaires dispo de livres dans la base de données lors de l'emprunt d'un livre.
emprunt.php
<?php
//Connexion au serveur MySQL et selection de la bdd bibliotek_bd
require 'Connections/link.php';
//Récupération des données du formulaire
$ISBN=$_POST['ISBN'];
//selection du nbre d'exemplaires dispo
$sql = "select nbr_exemplaires_dispo,ISBN from livres l where ISBN LIKE '".$ISBN."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
while($ligne=mysql_fetch_object($req))
{
$ligne->nbr_exemplaires_dispo=$ligne->nbr_exemplaires_dispo-1;//c'est pour décrémenter le nbre d'exemplaires dispo dans la base de données
}
//Mise à jour du nombre d'exemplaires disponibles'
$sql1="update livres SET nbr_exemplaires_dispo='$ligne->nbr_exemplaires_dispo' where ISBN='$ISBN'";
$req1 = mysql_query($sql1) or die('Erreur SQL !<br>'.$sql1.'<br>'.mysql_error());
?>
Lorsque j'entre le ISBN du livre et que je valide le script emprunt.php devré décrémenté le champ nbr_exemplaires_dispo de 1 mais lorsque je consulte ma BDD je trouve 0 au lieu du nbr_exemplaires_dispo-1
Si quelqu'un pourrait m'aider voici ma BDD
adherents (id_adherent,nom,prenom,mail)
livres(ISBN,libelle_livre,nbr_exp_dispo,num_auteur)
emprunter(date_debut,date_fin,date_restitution,ISBN,nom_adherent)
auteurs(num_auteur,nom_auteur)
j'ai ces deux scripts :
emprunt.html
<form method="post" action="emprunt.php" >
<table boreder="1" width="400" align="center">
<tr>
<td width="200"><b>ISBN</b></td>
<td width="200"><input type="text" name="ISBN"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit" value="Soumettre"></td>
</tr>
</table>
</form>
c'est un formulaire qui permet de mettre à jour le nbr d'exemplaires dispo de livres dans la base de données lors de l'emprunt d'un livre.
emprunt.php
<?php
//Connexion au serveur MySQL et selection de la bdd bibliotek_bd
require 'Connections/link.php';
//Récupération des données du formulaire
$ISBN=$_POST['ISBN'];
//selection du nbre d'exemplaires dispo
$sql = "select nbr_exemplaires_dispo,ISBN from livres l where ISBN LIKE '".$ISBN."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
while($ligne=mysql_fetch_object($req))
{
$ligne->nbr_exemplaires_dispo=$ligne->nbr_exemplaires_dispo-1;//c'est pour décrémenter le nbre d'exemplaires dispo dans la base de données
}
//Mise à jour du nombre d'exemplaires disponibles'
$sql1="update livres SET nbr_exemplaires_dispo='$ligne->nbr_exemplaires_dispo' where ISBN='$ISBN'";
$req1 = mysql_query($sql1) or die('Erreur SQL !<br>'.$sql1.'<br>'.mysql_error());
?>
Lorsque j'entre le ISBN du livre et que je valide le script emprunt.php devré décrémenté le champ nbr_exemplaires_dispo de 1 mais lorsque je consulte ma BDD je trouve 0 au lieu du nbr_exemplaires_dispo-1
Si quelqu'un pourrait m'aider voici ma BDD
adherents (id_adherent,nom,prenom,mail)
livres(ISBN,libelle_livre,nbr_exp_dispo,num_auteur)
emprunter(date_debut,date_fin,date_restitution,ISBN,nom_adherent)
auteurs(num_auteur,nom_auteur)
A voir également:
- Script mise a jour php
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mise a jour chromecast - Accueil - Guide TV et vidéo
- Mise a jour kindle - Guide
- Mise à jour libre office - Accueil - Bureautique
1 réponse
<?php //Connexion au serveur MySQL et selection de la bdd bibliotek_bd require 'Connections/link.php'; //Récupération des données du formulaire $ISBN=$_POST['ISBN']; //selection du nbre d'exemplaires dispo $sql = "SELECT nbr_exemplaires_dispo,ISBN FROM livres WHERE ISBN = '".$ISBN."'"; //tu avait un 1 en trop dans cette ligne $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $ligne=mysql_fetch_object($req); //pas besoin de boucle while puisque tu n'auras qu'un seul résultat $ligne->nbr_exemplaires_dispo=$ligne->nbr_exemplaires_dispo-1;//c'est pour décrémenter le nbre d'exemplaires dispo dans la base de données //Mise à jour du nombre d'exemplaires disponibles' $sql1="UPDATE livres SET nbr_exemplaires_dispo='".$ligne->nbr_exemplaires_dispo."' WHERE ISBN='".$ISBN."'"; $req1 = mysql_query($sql1) or die('Erreur SQL !<br>'.$sql1.'<br>'.mysql_error()); ?>
//Connexion au serveur MySQL et selection de la bdd bibliotek_bd
require 'Connections/link.php';
//Récupération des données du formulaire
$ISBN=$_POST['ISBN'];
//selection du nbre d'exemplaires dispo
$sql = "SELECT nbr_exemplaires_dispo FROM livres WHERE ISBN = '".$ISBN."'"; //j'ai enlevé ISBN dans le seclect et sa a marché
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$ligne=mysql_fetch_object($req); //pas besoin de boucle while puisque tu n'auras qu'un seul résultat
$ligne->nbr_exemplaires_dispo=$ligne->nbr_exemplaires_dispo-1;//c'est pour décrémenter le nbre d'exemplaires dispo dans la base de données
//Mise à jour du nombre d'exemplaires disponibles'
$sql1="UPDATE livres SET nbr_exemplaires_dispo='".$ligne->nbr_exemplaires_dispo."' WHERE ISBN='".$ISBN."'";
$req1 = mysql_query($sql1) or die('Erreur SQL !<br>'.$sql1.'<br>'.mysql_error());
?>