Vérifier si la variable existe dans la bdd
Résolu
iamlouky
Messages postés
29
Statut
Membre
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour,
J'aimerais vérifier dans ma base de donnée si la variable "code1" existe mais ça me mets :
( ! ) Fatal error: Call to a member function execute() on a non-object in C:\wamp\www\Projet\authentification\index.php on line 36
J'aimerais vérifier dans ma base de donnée si la variable "code1" existe mais ça me mets :
( ! ) Fatal error: Call to a member function execute() on a non-object in C:\wamp\www\Projet\authentification\index.php on line 36
<?php
// à mettre tout en haut du fichier .php, cette fonction propre à PHP servira à maintenir la $_SESSION
session_start();
$mysqli = mysqli_connect("localhost", "root", '', "projet");
if(!$mysqli) {
echo "Connexion non établie.";
exit;
}
$error = false;
$adminpageError = "";
$code1Error = "";
$code1noncorrespondError = "";
if (isset($_SESSION['username']) && $_SESSION['username'] =="admin") {
$adminpageError = "<p><a href='inscription.php'>Admin page </a></p>";
}
if (isset($_POST['valider'])) {
if (empty($_POST['code1'])) {
$error = true;
$code1Error = "S'il vous plait entrez le code .";
} else {
$req="SELECT COUNT(*) FROM `client` WHERE code1= '".mysqli_real_escape_string($mysqli, $_POST['code1'])."'";
$res=mysqli_query($mysqli,$req);
header("location: accueil.php");
}
}
// Si tout va bien, on peut continuer
// On récupère tout le contenu de la table client
$req = $mysqli->prepare('SELECT * FROM `client` WHERE username = :username');
$req->execute(array(':username' => $_SESSION['username']));
// On affiche chaque entrée une à une
while ($donnees = $req->fetch())
{
?>
A voir également:
- Vérifier si la variable existe dans la bdd
- Verifier compatibilite windows 11 - Guide
- Vérifier si mot de passe piraté - Guide
- Vérifier si une phrase est correcte - Accueil - Google
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
- Gmail.fr existe - Forum Gmail
1 réponse
Bonjour,
Tu te connectes à ta bdd en utilisant le stylé "procédural".
Sauf qu'ensuite tu fais ta requête en style objet.
Donc soit tu fais tout en style objet.. soit tout en style procédural...
De plus.. je t'invite vivement à lire et à appliquer ceci : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
NB: Et pense aussi à mettre des EXIT après tes redirections.
Tu te connectes à ta bdd en utilisant le stylé "procédural".
Sauf qu'ensuite tu fais ta requête en style objet.
Donc soit tu fais tout en style objet.. soit tout en style procédural...
De plus.. je t'invite vivement à lire et à appliquer ceci : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
NB: Et pense aussi à mettre des EXIT après tes redirections.
<?php // à mettre tout en haut du fichier .php, cette fonction propre à PHP servira à maintenir la $_SESSION session_start(); //activation des erreurs php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //connexion à la bdd (serait mieux dans un fichier à part...) $mysqli = mysqli_connect("localhost", "root", '', "projet"); if(!$mysqli) { echo "Connexion non établie."; exit; } //initilisation des variables $error = false; $adminpageError = ""; $code1Error = ""; $code1noncorrespondError = ""; //récupération PROPRE des variables AVANT de les utiliser $username = !empty($_SESSION['username']) ? $_SESSION['username']: NULL; $valider = !empty($_POST['valider']) ? $_POST['valider'] : NULL; $code1 = !empty($_POST['code1']) ? mysqli_real_escape_string($mysqli, $_POST['code1']) : NULL; if ($username$ =="admin") { $adminpageError = "<p><a href='inscription.php'>Admin page </a></p>"; } if ($valider) { if (! $code1) { $error = true; $code1Error = "S'il vous plait entrez le code ."; } else { $req="SELECT COUNT(*) FROM `client` WHERE code1= '".$code1."'"; $res= mysqli_query($mysqli,$req); header("location: accueil.php"); // et tu fais rien si tu as un code ??? tu retourne à l'accueil c'est tout ? //ça sert à quoi au juste ?? exit(); } } // le reste de ton code