Envoyer des donner et vérifier si elle excite déjà
Résolu/Fermé
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
-
22 juin 2021 à 19:46
firpic Messages postés 90 Date d'inscription jeudi 3 juin 2021 Statut Membre Dernière intervention 20 décembre 2022 - 5 juil. 2021 à 22:10
firpic Messages postés 90 Date d'inscription jeudi 3 juin 2021 Statut Membre Dernière intervention 20 décembre 2022 - 5 juil. 2021 à 22:10
A voir également:
- Envoyer des donner et vérifier si elle excite déjà
- Verifier un lien - Guide
- Vérifier si mot de passe piraté - Guide
- Verifier compatibilite windows 11 - Guide
- Envoyer ma position - Guide
- Verifier branchement xdsl - Forum Freebox
4 réponses
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
Ambassadeur
1 557
22 juin 2021 à 20:23
22 juin 2021 à 20:23
bonjour,
rien ne fonctionne?
rien ne fonctionne?
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
22 juin 2021 à 20:51
22 juin 2021 à 20:51
Bonjour,
Tu cherches à utiliser, dans tes fonctions, la variable $conn ... mais tu ne la passes pas en paramètre de ta fonction.. ( à moins que ça ne soit la variable $DB ... auquel cas tu n'as utilisé la bonne variable dans ton code .. )
De plus.. tu n'appelles pas ta fonction VerifEpi ... donc forcément.. elle ne risque pas de marcher ...
function DBVerif($DB, $DBVerif){ $DBVerif_query = mysqli_query($conn, "SHOW
Tu cherches à utiliser, dans tes fonctions, la variable $conn ... mais tu ne la passes pas en paramètre de ta fonction.. ( à moins que ça ne soit la variable $DB ... auquel cas tu n'as utilisé la bonne variable dans ton code .. )
De plus.. tu n'appelles pas ta fonction VerifEpi ... donc forcément.. elle ne risque pas de marcher ...
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
1
Modifié le 22 juin 2021 à 21:53
Modifié le 22 juin 2021 à 21:53
J'ai changer le code, la page s'ouvre mais affiche ces erreurs:
et voici le nouveau code:
Dans le code, mysql_error() et mysql_num_rows() sont ouligne en rouge, je ne sais pas pourquoi
Notice: Undefined index: nbaj in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 9
Notice: Undefined variable: DBVerif in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 46
Warning: mysqli_query() expects parameter 1 to be mysqli, object given in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 18
Warning: mysqli_error() expects exactly 1 parameter, 0 given in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 1
et voici le nouveau code:
<?php require('ses.php'); //affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); // Récupération PROPRE des variables AVANT de les utiliser $NbAj = empty($_POST['nbaj']) ? $_POST['nbaj'] : NULL; $DB = !empty( $_POST['DB']) ? $_POST['DB'] : NULL; $nameEpi = !empty( $_POST['nameEpi']) ? $_POST['nameEpi'] : NULL; $numEpi = !empty( $_POST['numEpi']) ? $_POST['numEpi'] : NULL; $linkEpi = !empty( $_POST['linkEpi']) ? $_POST['linkEpi'] : NULL; require('configepi.php'); // fonction pour verifier si le table existe function DBVerif($conn, $DB, $DBVerif){ $DBVerif_query = mysqli_query($conn, "SHOW TABLES LIKE '$DB'")or die(mysqli_error()); if(mysqli_num_rows($DBVerif) == 1){ $DBVerif == TRUE; }else{ $DBVerif == FALSE; $message = "La base de donnée sélectionné n'existe pas"; } } //fonction pour verif si un episode exite ou pas function VerifEpi($conn, $DBVerif, $DB, $nameEpi, $numEpi, $linkEpi){ DBVerif($conn, $DB,$DBVerif); if($DBVerif == TRUE){ $Epi_query = mysqli_query($conn, "SELECT `epsiode` FROM `$DB` WHERE `$numEpi`"); if(empty($Epi_query)){ addEpi($DB, $nameEpi, $numEpi, $linkEpi); }else{ $message = "L'episode existe deja"; } }else{ $message = "La base de donnée sélectionné n'existe pas"; } } //fonction pour ajouter un episode function addEpi($conn, $DB,$nameEpi, $numEpi, $linkEpi){ $add_query = mysqli_query($conn, "INSERT into `$DB` (epsiode, title, lien)VALUES('$numEpi', '$nameEpi', '$linkEpi') "); $message = "L'episode a été ajouté"; } VerifEpi($conn, $DBVerif, $DB, $nameEpi, $numEpi, $linkEpi); //juste le temps des tests, pour voir si ton formulaire s'envoie bien echo "<br> ---> POST :"; var_dump($_POST); ?> <!DOCTYPE html> <html> <head> <meta name="googlebot" content="noindex"> <link rel="icon" type="images/png" sizes="512x512" href="android-chrome-512x512.png"> <link rel="stylesheet" href="serie/allstyle.css"> <link rel="stylesheet" href="style.css"> <link rel="stylesheet" href="style1.css"> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Streawer</title> </head> <body style="background-color: #444444;"> <!-- En-tête de la page--> <div class="entete" onclick="window.location.reload()"> <img src="img/logo.png" id="logo" alt="Logo Streawer"/> <a href="main.php" id="nm" style="color: #4DB89A;"><h1 id="nom">Streawer</h1></a> </div> <?php $StNb = 1; while($StNb==$NbAj){ ?> <form class="box" action="" method="post"> <?php echo' <h1>Nouvelle episode</h1> <input type="text" class="box-input" name="DB" placeholder="Nom de la BD" required> <input type="text" class="box-input" name="nameEpi" placeholder="Nom de l episode" required> <input type="text" class="box-input" name="numEpi" placeholder="Numero de l epidode" required> <input type="text" class="box-input" name="linkEpi" placeholder="Lien de L episode" required> <input type="submit" name="submit" value="Ajouter" class="box-button"> <?php if (!empty($message)){ echo "<p class="errorMessage">'.$message.'</p>"; } ?>' ?> <input type="number" name="nbaj" value="1" class="box-num" style="margin: 20px;font-size: 20px;text-align: center;border: 10px;background-color: #444444;color: #4DB89A;"> </form> <?php } ?> <script> $(document).keydown(function(e){ if(e.which === 123){ return false; } }); </script> </body> <?php include('footer.php'); ?> </html>
Dans le code, mysql_error() et mysql_num_rows() sont ouligne en rouge, je ne sais pas pourquoi
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
1 557
>
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
22 juin 2021 à 22:03
22 juin 2021 à 22:03
ne vois-tu pas l'erreur el ligne 9?
FirPic
>
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
23 juin 2021 à 07:38
23 juin 2021 à 07:38
Je viens de comprendre, j’ai oublié de mettre un ! Devant empty
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
1
>
FirPic
23 juin 2021 à 12:30
23 juin 2021 à 12:30
et voici les erreur qui sont affciher maintenant:
Notice: Undefined variable: DBVerif in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 46
Warning: mysqli_query() expects parameter 1 to be mysqli, object given in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 18
Warning: mysqli_error() expects exactly 1 parameter, 0 given in /storage/ssd3/384/16626384/public_html/NewEpi1.php on line 18
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
1 557
>
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
23 juin 2021 à 12:36
23 juin 2021 à 12:36
as-tu lu et compris les messages d'erreur?
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
1
23 juin 2021 à 15:41
23 juin 2021 à 15:41
le fichier configepi.php est le fichier pour se connecter a la DB. La variable DBVerif sert a vérifier si une table existe ou non.
<?php // Initialiser la session session_start(); // Vérifiez si l'utilisateur est connecté, sinon redirigez-le vers la page de connexion if(!isset($_SESSION["username"])){ // verifier si l'utilisateur peut avoir acceder a la page if($_SESSION['username'] === 'admin'){ }else{ header("Location: https://streawer.000webhostapp.com/"); exit(); } } //affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); $message = ""; // Récupération PROPRE des variables AVANT de les utiliser $NbAj = !empty($_POST['nbaj']) ? $_POST['nbaj'] : NULL; $DB = !empty( $_POST['DB']) ? $_POST['DB'] : NULL; $nameEpi = !empty( $_POST['nameEpi']) ? $_POST['nameEpi'] : NULL; $numEpi = !empty( $_POST['numEpi']) ? $_POST['numEpi'] : NULL; $linkEpi = !empty( $_POST['linkEpi']) ? $_POST['linkEpi'] : NULL; require('configepi.php'); // fonction pour verifier si le table existe function DBVerif($conn, $DB, $DBVerif, $message){ $DBVerif_query = mysqli_query($conn, "SHOW TABLES LIKE '$DB'")or die(mysqli_error()); if(mysqli_num_rows($DBVerif_query) == 1){ $DBVerif == TRUE; }else{ $DBVerif == FALSE; $message = "La base de donnée sélectionné n'existe pas"; } } //fonction pour verif si un episode exite ou pas function VerifEpi($conn, $DBVerif, $DB, $nameEpi, $numEpi, $linkEpi, $message){ DBVerif($conn, $DB,$DBVerif, $message); if($DBVerif == TRUE){ $Epi_query = mysqli_query($conn, "SELECT `epsiode` FROM `$DB` WHERE `$numEpi`"); if(empty($Epi_query)){ addEpi($conn, $DB,$nameEpi, $numEpi, $linkEpi, $message); }else{ $message = "L'episode existe deja"; } }else{ $message = "La base de donnée sélectionné n'existe pas"; } } //fonction pour ajouter un episode function addEpi($conn, $DB,$nameEpi, $numEpi, $linkEpi, $message){ $add_query = mysqli_query($conn, "INSERT into `$DB` (epsiode, title, lien)VALUES('$numEpi', '$nameEpi', '$linkEpi') "); $message = "L'episode a été ajouté"; } VerifEpi($conn, $DBVerif, $DB, $nameEpi, $numEpi, $linkEpi, $message); //juste le temps des tests, pour voir si ton formulaire s'envoie bien echo "<br> ---> POST :"; var_dump($_POST); ?> <!DOCTYPE html> <html> <head> <meta name="googlebot" content="noindex"> <link rel="icon" type="images/png" sizes="512x512" href="android-chrome-512x512.png"> <link rel="stylesheet" href="serie/allstyle.css"> <link rel="stylesheet" href="style.css"> <link rel="stylesheet" href="style1.css"> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Streawer</title> </head> <body style="background-color: #444444;"> <!-- En-tête de la page--> <div class="entete" onclick="window.location.reload()"> <img src="img/logo.png" id="logo" alt="Logo Streawer"/> <a href="main.php" id="nm" style="color: #4DB89A;"><h1 id="nom">Streawer</h1></a> </div> <?php $StNb = 1; while($StNb==$NbAj){ ?> <form class="box" action="" method="post"> <?php echo' <h1>Nouvelle episode</h1> <input type="text" class="box-input" name="DB" placeholder="Nom de la BD" required> <input type="text" class="box-input" name="nameEpi" placeholder="Nom de l episode" required> <input type="text" class="box-input" name="numEpi" placeholder="Numero de l epidode" required> <input type="text" class="box-input" name="linkEpi" placeholder="Lien de L episode" required> <input type="submit" name="submit" value="Ajouter" class="box-button"> <?php if (!empty($message)){ echo "<p class="errorMessage">'.$message.'</p>"; } ?>' ?> <input type="number" name="nbaj" value="1" class="box-num" style="margin: 20px;font-size: 20px;text-align: center;border: 10px;background-color: #444444;color: #4DB89A;"> </form> <?php } ?> <script> $(document).keydown(function(e){ if(e.which === 123){ return false; } }); </script> </body> <?php include('footer.php'); ?> </html>
firpic
Messages postés
90
Date d'inscription
jeudi 3 juin 2021
Statut
Membre
Dernière intervention
20 décembre 2022
1
5 juil. 2021 à 22:10
5 juil. 2021 à 22:10
Suite
https://forums.commentcamarche.net/forum/affich-37267341-requetes-qui-ne-fonctionne-pas
22 juin 2021 à 21:41