Formulaire de validation

Résolu
bangado93 Messages postés 30 Date d'inscription mardi 19 juin 2018 Statut Membre Dernière intervention 27 juillet 2018 - 22 juil. 2018 à 18:45
bangado93 Messages postés 30 Date d'inscription mardi 19 juin 2018 Statut Membre Dernière intervention 27 juillet 2018 - 27 juil. 2018 à 00:54
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

jordane45 Messages postés 37500 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 mai 2023 341
22 juil. 2018 à 19:02
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;
}
     

0
bangado93 Messages postés 30 Date d'inscription mardi 19 juin 2018 Statut Membre Dernière intervention 27 juillet 2018
22 juil. 2018 à 19:15
Salut merci pour ta réponse j'ai essayé mais cela ne marche toujours pas dites moi comment on faire pour afficher les erreurs de mysqli
0
jordane45 Messages postés 37500 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 mai 2023 341
22 juil. 2018 à 19:19
Ca ne marche pas... ok...
mais ça ne t'affiche pas un message d'erreur ????

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

}

Une fois la requête affichée dans ta page, copie la directement dans ta bdd (via l'onglet sql de phpmyadmin) et regarde donc ce que ça te dit comme message d'erreur....
Tu verras que tu as légèrement oublié de mettre des QUOTES autour de tes "values" de ta requête
0
bangado93 Messages postés 30 Date d'inscription mardi 19 juin 2018 Statut Membre Dernière intervention 27 juillet 2018
22 juil. 2018 à 19:22
non çà n'affiche pas des erreurs
0
bangado93 Messages postés 30 Date d'inscription mardi 19 juin 2018 Statut Membre Dernière intervention 27 juillet 2018
22 juil. 2018 à 19:29
Maintenant çà n'envoie que les lignes vides dans la base de données
0
jordane45 Messages postés 37500 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 mai 2023 341
22 juil. 2018 à 19:49
As tu essayé la requête DIRECTEMENT dans ta BDD ?????
Que t'as affiché le ECHO ?????
0