gaston_gb
Messages postés20Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention14 octobre 2009
-
11 déc. 2007 à 00:32
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 2010
-
15 déc. 2007 à 18:52
salut à tous,
je ve realiser un catalogue ou je recupere les images et les references des produit depuis la base de données, je suis parvenu à afficher toutes les variables dans un tableau , mais,
mon problème c ke je ve faire de sorte chaque ligne de ce tableau ne comprend k 3 cellules
(donc trois produit )et pour chaque page je met une limite d'affichage pour que je respecte la mise en page.
s'il vous plait quelqu'un peut m'aider à regler ceci ?
merci d'avance.
voila mon code :
----
<?
$designation=$_GET['designation_categorie'];
$requete3 =\" SELECT id_categorie FROM categorie where designation_categorie=
'$designation' \" ;
$res=mysql_query($requete3) or die (\"erreur req1 \".mysql_error());
while ($recup3=mysql_fetch_row($res))
{
$id_categorie=$recup3['0'];
}
$requete1 =\"select p.id_pdt, c.id_categorie, p.photo_pdt, p.reference_pdt, p.designation_pdt , c.designation_categorie from produit p, categorie c
where p.id_categorie=c.id_categorie
and c.id_categorie='\".$id_categorie.\"' ;\";
$resultat=mysql_query($requete1) or die(\"erreur req2\".mysql_error());
while ($recup=mysql_fetch_row($resultat))
{
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 11 déc. 2007 à 03:47
pour ne recuperer que un certain nombre d'enregistrement dans ta base tu peux faire une requete comme ceci :
select * from ta_table where blabla LIMIT 0,6
la ca te recupere les 6 premiers enregistrements pour recuperer les 6 suivant tu fera LIMIT 6,12
j'espere t'avoir aider
Personne ne peut se permettre de juger l'autre....
gaston_gb
Messages postés20Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention14 octobre 2009 11 déc. 2007 à 14:31
salut,
merci pour ton aide,
mais j'ai toujours un probleme, lorsque j'execute la requete ça m'affiche le resultat de façon que chaque enregistrement correspond à une ligne, mais moi je veux k chaque enregistrement soit affiché dans une cellule de tableau, et chaque ligne de ce tableau contient 3 cellue , comme à peu pré le resultat qui s'affiche sur ce lien http://www.webdistrib.com/cat/informatique-__c_9.html j'espere etre un peu plus clair.
encore merci pour ton aide
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 11 déc. 2007 à 17:59
essaye de faire ton 2eme while de cette facon :
$nb = 0;
while ($recup=mysql_fetch_row($resultat)){
if ($nb==3){
$nb=0;
echo "</tr><tr>";
}else{
ton tableau pour remplir les colonnes
}
et juste un conseil essaye de toujours utiliser les balises <?php ?> et non <? ?>
voila j'espere t'avoir aider
Personne ne peut se permettre de juger l'autre....
gaston_gb
Messages postés20Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention14 octobre 2009 11 déc. 2007 à 23:11
s'il te plait, est ce que t pe m'aider sur ceci,
je veu faire la pagination de mon catalogue mais quand je clique sur le lien ppour la page suivante j'ai toujours des erreurs de reconnaissance de variables(undefinded variable (designation_categorie, id_categorie, t)!!
merci et desolé pour le derangement :)
voila le code
<?php
$designation= $_GET['designation_categorie'];
$requete3 =" SELECT id_categorie FROM categorie where designation_categorie=
'$designation' " ;
$res=mysql_query($requete3) or die ("erreur req1 ".mysql_error());
while ($recup3=mysql_fetch_row($res))
{
$id_categorie=$recup3['0'];
$debut=$_GET['debut'];
$designation_categorie=$_GET['designation_categorie'];
$maxenreg = "10";
$maquery = "SELECT * FROM produit order by id_pdt"; //selection de tous les pdts
$requete1 ="select p.id_pdt, c.id_categorie, p.photo_pdt, p.reference_pdt, p.designation_pdt , c.designation_categorie from produit p, categorie c
where p.id_categorie=c.id_categorie
and c.id_categorie='".$id_categorie."'
;";
$resultat=mysql_query($requete1) or die("erreur req2" .mysql_error());
while ($recup=mysql_fetch_array($resultat))
{
gaston_gb
Messages postés20Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention14 octobre 2009 12 déc. 2007 à 23:03
j'ai essayé mais ça ne marche pas !!
au 1er chargement de la page ça m'affiche tout d'abord des variables indefinies,
si je selectionne la catégorie, ça me donne les 6 1er enregistrements, là c bon.
mais si je clique sur le lien pour la page suivante, ça me donne le 1er résultat, et si je fais précédant alors là il ne reconnais pas les variables !!!
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 13 déc. 2007 à 09:29
Pour creer tes liens pourquoi ne fais tu pas :
if ($debut==0){
echo ("<< :");
}
for ( $i = 0; $i <= $nbr; $i++ ) //$nbr au nombre d'article dans la categorie
{
if (($i*10)!=$debut){
echo (": ($i+1) :");
}else{
echo ($i+1);
}
}
if (($debut+10)<$nbr){
echo (": >> ");
}
je vien d'ecrire ce code vite fait moi c'est ce que j'ai fais pour une gallerie photo et n'afficher que 3 photos par page et ca fonctionne..
si tu as des erreurs ecris les moi stp
j'espere t'avoir aidé
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 13 déc. 2007 à 09:31
pardon le premier $nbr correspond aux nombre de page que tu as besoin et le deuxieme $nbr correspond au nombre total d'article dans la categorie donc il faut changer le nom d'une des deux variables
Personne ne peut se permettre de juger l'autre....
gaston_gb
Messages postés20Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention14 octobre 2009 13 déc. 2007 à 23:14
salut,
j'ai essayé alors ça me donne le meme resultat de la requete sur tous les pages !!
alors j'ai changé de code , mais là j'ai au premier chargement :
Notice: Undefined index: where in d:\program files\easyphp1-7\www\ugurteks1\site3\front_office\categories.php on line 129
8
Notice: Undefined variable: t in d:\program files\easyphp1-7\www\ugurteks1\site3\front_office\categories.php on line 175
$requete3 =" SELECT id_categorie FROM categorie where designation_categorie=
'$designation' " ;
$res=mysql_query($requete3) or die ("erreur req1 ".mysql_error());
while ($recup3=mysql_fetch_row($res))
{
$id_categorie=$recup3['0'];
}
$select = "SELECT count(id_pdt) FROM produit where id_categorie='".$id_categorie."' "; //selection de tous les pdts
$resultatsel=mysql_query($select) or die("erreur req3" .mysql_error());
$nbrpdt=mysql_fetch_row($resultatsel);
$nbr=$nbrpdt[0];
echo $nbr ;
$moy=$nbr/$pag;
$sit=ceil($moy);
$min=($where-1)*$pag;
$requete1 ="select p.id_pdt, c.id_categorie, p.photo_pdt, p.reference_pdt, p.designation_pdt , c.designation_categorie from produit p, categorie c
where p.id_categorie=c.id_categorie
and c.designation_categorie='$designation'
and c.id_categorie='".$id_categorie."'
LIMIT $min , $pag
;";
$resultat=mysql_query($requete1) or die("erreur req2" .mysql_error());
while ($recup=mysql_fetch_array($resultat))
{
$t[] = $recup;
}
?>
<?php
$n = 3; // nb de colonne
for($i = 0; $i <= (count($t) - 1); $i ++) {
if ($i % $n == 0) {
?>----
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 14 déc. 2007 à 14:39
en fait je croi que ton if(!$where) et trop tard dans ta page car tu utilise la variable $where au dessus donc si elle n'est pas dans l'url ton $_get['where'] ne recupere rien donc ta requete ou tu l'utilise ne peux pas se faire
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 15 déc. 2007 à 03:02
dsl de ne pas t'avoir aidé mais je continue a chercher le probleme par contre si les données dans ta BDD que tu utilisent ne sont pas confidentiel est ce que ca te derangerais de m'envoyer sur le forum ou en message privé quelques enregistrement des table que tu utilise pour que je fasse des tests en local chez moi si tu ne ve pas je comprends
Personne ne peut se permettre de juger l'autre....