Problème avec l'utilisation d'une boucle,condition et un booléen [Résolu]

Messages postés
28
Date d'inscription
mardi 7 avril 2009
Dernière intervention
28 janvier 2012
- - Dernière réponse : MoulouD1993
Messages postés
28
Date d'inscription
mardi 7 avril 2009
Dernière intervention
28 janvier 2012
- 21 janv. 2012 à 10:26
Bonsoir à tous,
Voilà mon problème depuis plus de 2 heures que j'essaye de trouver une solution à ce problème, j'essaye d'utiliser un booléen pour savoir si il passe par une l'étape en mettant une condition, bon voilà le code
$sql 'SELECT * FROM 'notes' WHERE 'pseudo' "'.$pseudo.'"';
$req = mysql_query($sql);
$trouver=false;
while($data = mysql_fetch_assoc($req)) {
if ($_POST['matiere'] == $data['matiere']) {
$trouver=true;
}
}
if ($trouve==true) {
echo 'ça existe';
}
else {
echo'ça n'.'existe pas';
}




Moi ce que je veux essayer de faire avec ça c'est qu'il recherche dans la table membre les lignes ou y a la variable $pseudo, et puis si il en trouve deux par exemple il doit regarder dans la colonne matiere si il en trouve une comme c'elle que l'utilisateur a entré dans le formulaire ( $_POST['matiere'] ) si c'est vrai alors ça existe sinon ça n'existe pas

le problème c'est qu'il affiche toujours le texte "ça n'existe pas"

Merci beaucoup pour votre aide.
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
3
Merci
if ($trouver==true)
Il y a plus simple comme façon de faire :
$sql 'SELECT id_notes FROM notes WHERE pseudo "' . mysql_real_escape_string($pseudo);
$sql .= '" AND matiere="' . mysql_real_escape_string($data['matiere']) . '"';
$req = mysql_query($sql);
echo (mysql_num_rows($req) ? 'existe' : 'n\'existe pas');


VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de cs_ghuysmans99
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
3
Merci
bonsoir
essaie

<?php
mysql_connect('localhost','root','');
mysql_select_db('123456');

print_r($_POST);

/*initialisation*/

$matiere = isset($_POST['matiere']) ? $_POST['matiere'] : null;
$pseudo = isset($_POST['pseudo']) ? $_POST['pseudo'] : null;

$msg=$trouver=null;

$sql "SELECT * FROM notes WHERE pseudo '".$pseudo."'";

$req = mysql_query($sql);

while($data = mysql_fetch_array($req)) {
    
        
    if($_POST['matiere'] == $data['matiere']) {
    $trouver=true;
    $msg='ok';
    }else{
    $trouver=false;
    $msg='ça n\'existe pas';
    }
    
}

/*resultats*/

echo '';
print_r($msg);
echo '
';
print_r($trouver); /*0 ou 1*/
echo '

';
?>
<form method="post" action="">

calcul
anglais

</form>
<!--
-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Serveur: localhost
-- Généré le : Ven 20 Janvier 2012 à 19:59
-- Version du serveur: 5.1.36
-- Version de PHP: 5.2.11

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Base de données: `123456`
--

-- --------------------------------------------------------

--
-- Structure de la table `notes`
--

CREATE TABLE IF NOT EXISTS `notes` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `pseudo` varchar(30) NOT NULL,
  `matiere` varchar(30) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

--
-- Contenu de la table `notes`
--

INSERT INTO `notes` (`id`, `pseudo`, `matiere`) VALUES
(1, 'toto', 'anglais'),
(2, 'titi', 'calcul'),
(3, 'tata', 'rien'),
(4, 'tutu', 'rien');
-->


Bonne programmation !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de cod57
Messages postés
28
Date d'inscription
mardi 7 avril 2009
Dernière intervention
28 janvier 2012
0
Merci
Merci de votre réponse, à propos du r que j'ai oublié pour $trouver ça ne marche toujours pas, et même avec votre code ça ne marche toujours pas, car moi si ça réussi, j'ai toujours ça n'existe pas.

et après si ça réussi je changerais ce bout de code
echo'ça n\'existe pas';
car pour l'instant c'est juste pour savoir si ça marche ou pas, avant que je continue.

Merci de votre réponse.
Commenter la réponse de MoulouD1993
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
0
Merci
Y a-t-il un message d'erreur, un warning ?


VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
Commenter la réponse de cs_ghuysmans99
Messages postés
28
Date d'inscription
mardi 7 avril 2009
Dernière intervention
28 janvier 2012
0
Merci
Bonsoir à tous,

j'ai trouvé la solution, merci beaucoup pour votre aide, une dernière chose si c'est possible, quel est le meilleur livre pour le PHP à acheter ?

Merci beaucoup à vous.
Commenter la réponse de MoulouD1993
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
0
Merci
Perso je n'ai pas appris le PHP via des livres mais via le tuto du SdZ (je connaissais déjà ASP3 et le fonctionnement général des bases de données).

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
Commenter la réponse de cs_ghuysmans99
Messages postés
28
Date d'inscription
mardi 7 avril 2009
Dernière intervention
28 janvier 2012
0
Merci
Oui c'est vrai que le Tuto de SDZ est un super tuto, et j'ai apris beaucoup de chose sur le PHP avec ce tuto.
Commenter la réponse de MoulouD1993

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.