Formulaire de validation [Résolu]

Signaler
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018
-
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018
-
Bonjour, j'ai besoin de votre aide
J'ai une page de validation ou j'accepte les hôpitaux qui sont inscris sur mon site et pour pour cela j'ai un formulaire d'inscription qui récupère les donnés dans une table hopital_e je veux ensuite qu'apres la validation que les informations de la table hopital_e soit transferer dans la table hopital et qu'elle soit supprimer dans la table hopital_e je suis en mode mysqli. Mon problème c'est que j'arrive pas à envoyer les information dans la table hopital
Voici le code que j'ai écris
<body>
<label style=" margin-left: 150px"><h1 style="color: magenta"> Liste des hôpitaux en attente de validation</h1> </label><br/><br/>
        <?php //Connection avec la BDD.

/* Database connection settings */
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'pgrdvdm';
$mysqli = new mysqli($host,$user,$pass,$db) or die($mysqli->error);


$reponse = $mysqli->query("SELECT * FROM hopital_e");
        
         
        ?>
         <form action="validehopital.php" method="POST">
        	<table class="table table-striped">
                <tr  style="color: blue">
                    <th >Nom</th>
                    <th>Adresse</th>
                    <th>Email</th>
                    <th>Télephone</th>
                    <th>Pseudo Admin</th>
                    
                   
                   
                </tr>
            <?php //On affiche les lignes du tableau une à une à l'aide d'une boucle

            while($donnees = mysqli_fetch_assoc($reponse))
            {
            ?>
                <tr>
                    <td><?php echo $donnees['Nom'];?></td>
                    <td><?php echo $donnees['adresse'];?></td>
                    <td><?php echo $donnees['email'];?></td>
                    <td><?php echo $donnees['telephone'];?></td>
                    <td><?php echo $donnees['pseudo'];?></td>
                    
                    <td><input type="submit" name="valider" style="color: green" value="Valider"></td>
                    <td><input type="submit" name="refuser" style="color: red" value="Refuser"></td>
                    
                </tr>

            <?php
            } //fin de la boucle, le tableau contient toute la BDD
            ?>
        </table>
        </form>
        <?php 
        $nom=$donnees['Nom'];
        $adresse=$donnees['adresse'];
        $email=$donnees['email'];
        $telephone=$donnees['telephone'];
        $pseudo=$donnees['pseudo'];
        $pass=$donnees['password'];
        if (isset($_POST['valider'])) {

			$rep = $mysqli->query("INSERT INTO hopital(Nom,adresse,email,telephone) VALUES($nom,$adresse,$email,$telephone,$pseudo,$pass) ");
			$rep1 = $mysqli->query("DELETE FROM hopital_e WHERE numhop='$numhop'");
        	
        }

        ?>
    </body>

1 réponse

Messages postés
32437
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 mai 2021
347
Tu devrais regarder comment gérer (et afficher....) les erreurs Mysqli.
Tu aurais pu trouver par toi même l'erreur.
Modifie donc, pour commencer, ces deux lignes de code
$rep = $mysqli->query("INSERT INTO hopital(Nom,adresse,email,telephone) VALUES($nom,$adresse,$email,$telephone,$pseudo,$pass) ");
			$rep1 = $mysqli->query("DELETE FROM hopital_e WHERE numhop='$numhop'");

comme ceci:


$sql = "INSERT INTO hopital(Nom,adresse,email,telephone) VALUES($nom,$adresse,$email,$telephone,$pseudo,$pass) ";
$rep = $mysqli->query($sql);
if(!$rep){
  printf("Message d'erreur : %s\n", $mysqli->error);
  echo "<br>Requete : ". $sql;
}

$sql = "DELETE FROM hopital_e WHERE numhop='$numhop'";
$rep1 = $mysqli->query($sql);
if(!$rep1){
  printf("Message d'erreur : %s\n", $mysqli->error);
  echo "<br>Requete : ". $sql;
}
     

Messages postés
32437
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 mai 2021
347
Tu as regardé le echo ?
A mon avis non...sinon tu aurais vu que tes variables spnt vides...
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018

Là je suis bleu je l'ai avais récupérer du tableau dans des variables que je mais dans les values
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018

comment faire pour regler le probleme
Messages postés
32437
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 mai 2021
347 >
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018

Tu pourrais éventuellement déplacer le code d'insertion DANS ta boucle au lieu de l'avoir en dessous....
Mais bon, il existe des solutions plus propres.....
En SQL il existe le INSERT SELECT (je te laisse chercher sur le net )

Une autre chose importante.... c'est ....... "pourquoi ??"
Pourquoi veux tu faire ça ? Déplacer des enregistrements d'une table à une autre est une idée bizarre qui semble démontrer une erreur de conception de ton programme.
Messages postés
30
Date d'inscription
mardi 19 juin 2018
Statut
Membre
Dernière intervention
27 juillet 2018

j'ai trouvé un autre moyens pour faire ce que je voulais et cela marche je te remercie pour ton aide