problème choisir par catégorie en php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème choisir par catégorie en php

Re: problème choisir par catégorie en php

par minou10 » 29 avr. 2012, 04:21

bonsoir tout le monde merci de votre soutient

oui en fait j'ai ajouté une code pour que $titre1 sera connu et maintenant sa marche très bien mercii a vous tous

Re: problème choisir par catégorie en php

par moogli » 28 avr. 2012, 23:50

vu que le code est incomplet je ne peux que dire que

$titre1 et $data3 n'existent pas et qu'il y a une } en trop a la fin.

C'est surement pas vrai avec le code complet, celui ci serait donc assez pratique.

ton preg_replace peux être remplacé par un str_replace (c'est mieux même dans ce cas).

y a t'il un message d'erreur ?

y a t'il des symptome ? que fait le script, qu'est ce qu'il ne fait pas etc etc


@+

Re: problème choisir par catégorie en php

par minou10 » 28 avr. 2012, 19:35

voila j'ai fais un code regardé mon erreur moi je la trouve pas
<?php echo '<a href="../index.php">Accueil</a> => <a href ="/fichit/includes/Type.php">Consulter les fiches</a> => <a href ="/fichit/includes/fiche.php?f='.$titre1.'">'.$titre1.'</a>'; ?>	
	
			</div>
				<h1>Fiches Disponibles</h1>
			<?php 
		
			$demande = "SELECT  Titre  FROM fiche WHERE region = '$titre1' ORDER BY Nom "
			$result = mysql_query($demande);
			while($data = mysql_fetch_assoc($result)) 
			{
             
			 echo '<p> <a href="./categorie.php?f='.$data['Titre'].'">'.preg_replace('/_/',' ',htmlspecialchars($data['Titre'])).'('.$nb3.')</a><br></p>';  
			  
			}
			} 
	
			?>

Re: problème choisir par catégorie en php

par moogli » 27 avr. 2012, 17:35

en fait des fois oui des fois non.


on ne va ta faire ton script.

dit nous ce que tu ne sais pas faire et on pourra t'expliquer ou t'orienter vers un tuto ;)

une liste déroulante s'utilise comme le autres champs html (enfin sans le type file mais c'est une autre histoire).
=> http://www.lephpfacile.com/cours/8-recu ... ormulaires

coté validation du formulaire c'est une simpleConcaténation pour créer la requete SQL
http://www.lephpfacile.com/cours/13-aff ... votre-base

@+

Re: problème choisir par catégorie en php

par minou10 » 27 avr. 2012, 17:08

vous etes la ???

Re: problème choisir par catégorie en php

par minou10 » 26 avr. 2012, 19:25

en fait le compteur c'est juste pour compter combien de fiche dans un Titre
en fait Titre est un champ dans la talbe fiche

en fait si c'est possible tu peux m'aider pour changer cette méthode et travaillé avec une liste déroulante par exemple :

Code : Tout sélectionner

<form action="fiche.php" method="post"> <select id="data_region"> <option value="annuaire">annuaire</option> <option value="Cinéma & TV">Cinéma & TV</option> <option value="sport">sport</option> </select> <input type="submit"> </form>
quand je choisi une categorie il vas me dirigé vers les titres qui appartient a cette categorie !!

Re: problème choisir par catégorie en php

par moogli » 26 avr. 2012, 18:25

Salut,

Qu'entend tu par "affiche tout" ?
As tu affiché la réalité SQL pour la rester dans un client SQL ? (phpmyadmin ou équivalent).

À quoi sert la requête à dans le while ?
Tu as fait une table par "titre" ?
Si oui stop tout c'est une très très mauvaise idée.
Le compteur doit être dans la 1ère table. S'il y a plusieurs compteurs alors une table "compteur" peux être préférable (jointure).

@+

Re: problème choisir par catégorie en php

par minou10 » 26 avr. 2012, 16:55

oui j'ai changé maintenant mais le meme probléme il m'affiche tout les champs en meme temps il m'affiches pas juste le contenu d'une catégorie :( :(

<?php 
	
$demande = "SELECT  Titre FROM fiche  WHERE  region =  '".mysql_real_escape_string($_POST['region'])."'";
			$result = mysql_query($demande);
			while($data = mysql_fetch_assoc($result)) 
			{
			$nb_fiche_fini="SELECT COUNT(*) AS compteur2 FROM `".htmlspecialchars($data['Titre'])."`";
			$req_nb_fiche_fini=mysql_query($nb_fiche_fini) ; 
			$row2 = mysql_result($req_nb_fiche_fini,0) ;
			$nb3 = $row2["compteur2"];			
		
			
			if($nb3 == 0){}
			
			else{
             
			 echo '<p> <a href="./categorie.php?f='.$data['Titre'].'">'.preg_replace('/_/',' ',htmlspecialchars($data['Titre'])).'('.$nb3.')</a><br></p>';  
			  
			}
			} 
			?>

Re: problème choisir par catégorie en php

par xTG » 26 avr. 2012, 08:46

Hum j'avais trop vite parcouru ton script, il doit générer une erreur SQL.
Tu utilises des ` au lieu de ' pour entourer une chaîne de caractères dans ton where.

Re: problème choisir par catégorie en php

par minou10 » 26 avr. 2012, 01:04

bien sur oui, juste pour me comprendre bien voila une explication :


j'ai une table Fiche qui s'appelle :

id---- Titre------- region
1 -----alvaro -----Cinéma & TV
2 -----carboni-----annuaire
3 -----simo -------Cinéma & TV
4 -----moha ------sport
5 -----molay ------sport
6 -----rachi------- annuaire


voila donc je veux afficher la region te quand je clique sur une region il faut qu'il me donne le titre qui appartient ( merci )
par exemple je choisi sport il faut qu'il m'affiche ( moha et molay )

Re: problème choisir par catégorie en php

par xTG » 25 avr. 2012, 20:33

Il y a quelque chose dans $_POST['region'] ?

Re: problème choisir par catégorie en php

par minou10 » 25 avr. 2012, 19:41

en fait j'ai pas bien compris regardé ce que j'ai fais mais sa marche pas

Code : Tout sélectionner

$demande = "SELECT DISTINCT Titre FROM fiche WHERE region = `". mysql_real_escape_string($_POST['region'])."`";


voila mon code complet

Code : Tout sélectionner

<?php $demande = "SELECT DISTINCT Titre FROM fiche WHERE region = `". mysql_real_escape_string($_POST['region'])."`"; //$demande = "SELECT Titre FROM fiche WHERE fiche.region = categorie.region "; $result = mysql_query($demande); while($data = mysql_fetch_assoc($result)) { $nb_fiche_fini="SELECT COUNT(*) AS compteur2 FROM `".htmlspecialchars($data['Titre'])."`"; $req_nb_fiche_fini=mysql_query($nb_fiche_fini) ; $row2 = mysql_result($req_nb_fiche_fini,0) ; $nb3 = $row2["compteur2"]; //on affiche les informations de l'enregistrement en cours $region = " select region from fiche "; $region1 = " select region from categorie "; if($nb3 == 0){} //if($region == $region1){ //return (TRUE); else{ echo '<p> <a href="./categorie.php?f='.$data['Titre'].'">'.preg_replace('/_/',' ',htmlspecialchars($data['Titre'])).'('.$nb3.')</a><br></p>'; //} } } ?>

Re: problème choisir par catégorie en php

par xTG » 25 avr. 2012, 07:13

Voilà ce que cela peut donner :
$sql = 'SELECT mesChamps FROM maTable WHERE monChamp = ' . mysql_real_escape_string($_POST['monChamp']);

Re: problème choisir par catégorie en php

par Invité » 25 avr. 2012, 01:18

vous pouvez me donné un exemple comme sa je pourrai trouver une solution
ou bien voila mes tables :
table = categorie ( qui stock les types( regions ) de categorie )
table = fiche ( qui stock les informations de l'enregistrement par exemple le nom le prenom et la region cette region est choisi parmi les region de la table categorie sous forme de liste déroulante )
donc mon code sql c'est : select titre from fiche order by titre;

Re: problème choisir par catégorie en php

par xTG » 24 avr. 2012, 21:37

Il faut inclure cette condition dans ta requête SQL (clause WHERE) c'est encore le mieux.
Quand à te diriger, sans plus d'informations et de code cela va être difficile...