BD/PHP

Résolu/Fermé
Ibilolz Messages postés 131 Date d'inscription mardi 1 avril 2014 Statut Membre Dernière intervention 26 juin 2023 - Modifié par Ibilolz le 10/04/2014 à 10:35
mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 13 avril 2014 à 10:02
Bonjour, je suis entrain de travailler sur un petit site en html5/CSS3 avec un peu de php et de javascript pour visualiser la base de donnée du matériel informatique du lycée ou je travail. J'ai donc créé ma base de donnée avec phpmyadmin, j'ai récupérer une fonction de conection à celle-ci qui marche bien ("fonctions.connect.php"). Le problème est que sur ma page Ajouter.php j'ai créer une petit champ de ce style :

<FORM Method="POST" Action="BD.php"> Numéro de la salle : <INPUT type=text size=1 name=Salle> <input type="submit" name="submit" Value="Ajouter">   
</div></FORM>



Et j'aimerai donc récupérer le numéro de la salle pour l'introduire le numéro comme id_salle dans ma table salle. J'ai donc programmé le fichier BD.php comme vous pouvez le voir ci dessous, et quand je clique sur le bouton ajouter sur ma page, il charge une page blanche et puis rien. Je ne comprend pas, le code me semble pourtant juste. J'ai testé ma fonction de connection aussi à part et elle marche aussi.

<?php

include 'fonctions.connect.php';
$connect_db = connect();

if ($_POST['Salle']!='')
{
$num_Salle = $_POST['Salle'];
$sql='INSERT INTO Salle(id_salle)
VALUES ("$num_Salle")';

mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());

// on ferme la connexion à la base
mysql_close();

?>

1 réponse

mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
13 avril 2014 à 10:02
Bonjour,

Votre code SQL:
INSERT INTO Salle(id_salle)
  VALUES ("$num_Salle") 


déja, si vous faites deux insertions du même numéro, vous aurez une erreur, donc faire:

INSERT IGNORE INTO Salle(id_salle)
  VALUES ("$num_Salle")


Ensuite, faites une insertion clé-valeur:

INSERT IGNORE INTO Salle(id_salle)
 SET id=$num_Salle


Code complet de $sql:

$sql = "INSERT IGNORE INTO Salle(id_salle)
 SET id=$num_Salle";


ATTENTION: ne marche que si vous avez le champ ID. Si votre numéro de salle est stocké dans un champ de nom différent, adaptez le code SQL que je vous donne...

A+


0