Problème avec une requête sql
Résolu
Luune
Messages postés
24
Date d'inscription
Statut
Membre
Dernière intervention
-
Luune Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Luune Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
S'il vous plait est ce que vous pouvez me dire pourquoi cette requête ne fonctionne pas alors que je l'ai tester a plusieurs reprise elle est 100% correcte
quand j'essaie avec cella ca marche:
mais dès que j'ajoute users.idsociete=societe.idsociete ça ne retourne rien, comme dans cette requete :
Merci d'avance pour vos réponses
S'il vous plait est ce que vous pouvez me dire pourquoi cette requête ne fonctionne pas alors que je l'ai tester a plusieurs reprise elle est 100% correcte
<?php $sql = 'SELECT mail, mdp, nomsociete FROM users inner join societe on users.idsociete=societe.idsociete where mail="'.mysql_escape_string($_POST['mail']).'" AND mdp="'.mysql_escape_string($_POST['mdp']).'" AND nomsociete="'.$_SESSION['nomsociete'].'"';
?>
quand j'essaie avec cella ca marche:
$sql = 'SELECT * FROM users WHERE mail="'.mysql_escape_string($_POST['mail']).'" AND mdp="'.mysql_escape_string($_POST['mdp']).'"';
mais dès que j'ajoute users.idsociete=societe.idsociete ça ne retourne rien, comme dans cette requete :
$sql = 'SELECT mail, mdp, nomsociete FROM users inner join societe on users.idsociete=societe.idsociete where mail="'.mysql_escape_string($_POST['mail']).'" AND mdp="'.mysql_escape_string($_POST['mdp']).'"';
Merci d'avance pour vos réponses
A voir également:
- Problème avec une requête sql
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
3 réponses
D'accord mais dans ce cas dans tes deux tables tu n'as pas les ids qui correspondent.
As-tu phpMyAdmin installé ? Tu peux regarder que les ids existent dans chaque tables
As-tu phpMyAdmin installé ? Tu peux regarder que les ids existent dans chaque tables
Bonjour,
1 - Attention, l'extension mysql était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0.
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
À la place, tu peux (<gras DOIS </gras> ) utiliser l'extension MySQLi ou l'extension PDO_MySQL
https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
Si tu choisis PDO, pense à activer la gestion des erreurs : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
2 - Il est préférable de récupérer les variables AVANT de les utiliser
3 - Peux tu faire un echo de ta variable $sql et nous montrer ce que ça t'affiche. ( puis copier ce résultat dans ton phpmyadmin afin de t'assurer qu'elle marche telle qu'elle en sql )
Cordialement,
Jordane
1 - Attention, l'extension mysql était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0.
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
À la place, tu peux (<gras DOIS </gras> ) utiliser l'extension MySQLi ou l'extension PDO_MySQL
https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
Si tu choisis PDO, pense à activer la gestion des erreurs : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
2 - Il est préférable de récupérer les variables AVANT de les utiliser
$mail = !empty($_POST['mail']) ? mysql_escape_string($_POST['mail']) : NULL; $mdp = !empty($_POST['mdp']) ? mysql_escape_string($_POST['mdp']) : NULL; if($mail && $mdp){ $sql = "SELECT mail, mdp, nomsociete FROM users U INNER JOIN societe S ON S.idsociete = U.idsociete WHERE mail='$mail' AND mdp='$mdp' "; echo "La requete est :" . $sql; //la suite de ton code } // fin du if
3 - Peux tu faire un echo de ta variable $sql et nous montrer ce que ça t'affiche. ( puis copier ce résultat dans ton phpmyadmin afin de t'assurer qu'elle marche telle qu'elle en sql )
Cordialement,
Jordane
pour les ids ils correspondent
oui j'ai installé phpMyAdmin, c'est la ou j'ai testé la requête et elle me retourne le résultat souhaité
?