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

Résolu
MoulouD1993 Messages postés 28 Date d'inscription mardi 7 avril 2009 Statut Membre Dernière intervention 28 janvier 2012 - 20 janv. 2012 à 17:59
MoulouD1993 Messages postés 28 Date d'inscription mardi 7 avril 2009 Statut Membre 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.

7 réponses

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
20 janv. 2012 à 18:18
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
3
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2012 à 20:03
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 !
3
MoulouD1993 Messages postés 28 Date d'inscription mardi 7 avril 2009 Statut Membre Dernière intervention 28 janvier 2012
20 janv. 2012 à 18:37
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.
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
20 janv. 2012 à 19:02
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MoulouD1993 Messages postés 28 Date d'inscription mardi 7 avril 2009 Statut Membre Dernière intervention 28 janvier 2012
20 janv. 2012 à 23:09
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.
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
20 janv. 2012 à 23:59
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
0
MoulouD1993 Messages postés 28 Date d'inscription mardi 7 avril 2009 Statut Membre Dernière intervention 28 janvier 2012
21 janv. 2012 à 10:26
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.
0
Rejoignez-nous