> Tous les forums > Forum des Webmasters
 Base de donnée et phpSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
loulou84
  Posté le 07/11/2010 @ 17:40 
Aller en bas de la page 
Petit astucien

Bonsoir,

J'ai crée un catalogue pour mon site ou j'affiche tous mes produits!

Comme j'ai plus d'une page j'ai fait un lien php avec page=1 page=2 ect ...

Mon soucie c'est que sur chaque page il doit m'afficher 4 produit,

J'ai donc mit une boucle while

while ($prod = mysql_fetch_array($reponse) AND $compteur =4)

Mon soucie c'est qu'il m'affiche 4 fois le même produit sur chaque page comment faire pour lui dire ou commencer dans la base de données?

Merci

Publicité
loulou84
 Posté le 07/11/2010 à 17:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Désolé c'est une erreur de copier coller,

Il ne m'affiche pas 4 fois le même produit mais plutôt les 4 premiers produits de ma base de donnes sur mes 3 pages

Comment faire commencer au 5 produits sur la page 2

loulou84
 Posté le 07/11/2010 à 18:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

ok mais mon soucie est le suivant

Ma base de donnée:

Produit1 nom1 id=1 //ceux la s'affiche sur la premiere page

Produit2 nom2 id=2

Produit3 nom3 id=3

Produit4 nom4 id=4

Produit5 nom5 id=6 //il est possible que j'ai supprimé un produit que je ne vend plus

Produit5 nom5 id=6

Produit5 nom5 id=6//ceux la s'affiche sur la deuxieme page

Produit5 nom5 id=6

et j'affiche mon catalogue comme ceci

$_GET['id'] = (int) $_GET['id'];
$_GET['page'] = (int) $_GET['page'];
if ($_GET['id'] > 0 AND $_GET['id'] < 4 AND $_GET['page'] > 0 AND $_GET['page'] < 4)
{
if($_GET['id']==1)
{
include('connexion.php');
$page="Nos produits";
$query = sprintf("SELECT id, nom, prix FROM catalogue ORDER BY nom ASC;");
$reponse = mysql_query($query) or die ($query.'<br>'.mysql_error());
if (mysql_num_rows($reponse) == 0)
{
$message_erreur = "<p>Il ne s'affiche aucun produit? <a href='ecrire.php'>Merci de nous contacter</a>.</p>";
}
else
{
$nbrproduit = mysql_num_rows($reponse);
$message_erreur = '';
}
}
if($_GET['id']==2)
{
include('connexion.php');
$page="Nos occasions";
$query = sprintf("SELECT id, nom, prix FROM occasion ORDER BY nom ASC;");
$reponse = mysql_query($query) or die ($query.'<br>'.mysql_error());
if (mysql_num_rows($reponse) == 0)
{
$message_erreur = "<p>Il ne s'affiche aucun produit? <a href='ecrire.php'>Merci de nous contacter</a>.</p>";
}
else
{
$nbrproduit = mysql_num_rows($reponse);
$message_erreur = '';
}
}
if($_GET['id']==3)
{
include('connexion.php');
$page="Nos locations";
$query = sprintf("SELECT id, nom, prix FROM location ORDER BY nom ASC;");
$reponse = mysql_query($query) or die ($query.'<br>'.mysql_error());
if (mysql_num_rows($reponse) == 0)
{
$message_erreur = "<p>Il ne s'affiche aucun produit? <a href='ecrire.php'>Merci de nous contacter</a>.</p>";
}
else
{
$nbrproduit = mysql_num_rows($reponse);
$message_erreur = '';
}
}
}
else{ echo"<p class='erreur'>Il n'y a aucun produit correspondant.<br>
C'est interdit de changer l'Url!!</p>";
}
for($i=1;$i<50;$i++)
{
if($nbrproduit> 4*$i)
{
$nbrpage=($i+1);
}
}
mysql_close();
?>

$_GET['id'] = (int) $_GET['id'];

$_GET['page'] = (int) $_GET['page'];

if ($_GET['id'] > 0 AND $_GET['id'] < 4 AND $_GET['page'] > 0 AND $_GET['page'] < 4)

{

if($_GET['id']==1)//je charge ma base de donnee des proudits

{

}

if($_GET['id']==2)je charge ma base de donnee des proudits d'occasion

{

}

if($_GET['id']==3)je charge ma base de donnee des proudits de location

{

}

}

}

else{ echo"<p class='erreur'>Il n'y a aucun produit correspondant.<br>

C'est interdit de changer l'Url!!</p>";

}

for($i=1;$i<50;$i++)

{

if($nbrproduit> 4*$i)

{

$nbrpage=($i+1);

}

}

mysql_close();

?>

ma page

et apres j'affiche a l'aide

<?php

$compteur=0;

if ($message_erreur != '')

{ echo $message_erreur; }

else

{

echo '<ul>';

while ($prod = mysql_fetch_array($reponse) AND $compteur<4 )

{

echo '

<p><img src="'.$prod['id'].'" alt="Produit" width="140" height="120" class="imageflottante" /></p>

<p> Marque</p>

<p><a href="details.php?id='.$prod['id'].'&cat=1"><u>Référence : </u><strong>'.$prod['nom'].'</strong></a></p>

<p><u>Prix: </u><strong>'.$prod['prix'].'</strong></p><br/><br/>';

$compteur=$compteur+1;

}

}

$page2=''.$_GET['page'].'';

$page2=$page2+1;

if( $_GET['page']==$nbrpage OR $nbrpage==1)

{

}

else {

echo'<span class="texte"><a href="catalogue.php?id='.$_GET['id'].'&page='.$page2.'">Page suivante</a></span>';

}

?>

loulou84
 Posté le 07/11/2010 à 22:43 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

c'est exactement ce que je veux faire mais je n'y suis pas parvenut!

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
39,99 €Imprimante multifonction HP DeskJet 2710 (Wifi) à 39,99 €
Valable jusqu'au 22 Avril

Amazon propose actuellement l'imprimante multifonction HP DeskJet 2710 (WiFi) à 39,99 €. Cette imprimante 3 en 1 fait donc imprimante, photocopieur et scanner. Elle dispose d'un chargeur automatique de documents. Elle fonctionne avec 2 cartouches d'encre (une noire et une 3 couleurs).


> Voir l'offre
19,16 €Clé USB 3.0 Sandisk Ultra 128 Go à 19,16 €
Valable jusqu'au 23 Avril

Amazon propose la clé USB Sandisk Ultra d'une capacité de 128 Go à 19,16 €. Cette clé USB 3.0 est compatible USB 2.0 et offre de bons débits d'environ 100 Mo/s en lecture et en écriture. Le connecteur est rétractable pour éviter qu'il prenne la poussière.


> Voir l'offre
32,99 €Compresseur portable autonome Xiaomi Mija à 32,99 €
Valable jusqu'au 22 Avril

Cdiscount fait une promotion sur le compresseur portable autonome Xiaomi Mija qui passe à 32,99 € livré gratuitement. Ce compresseur à emporter facilement avec vous comporte un écran (où vous pourrez choisir la pression à atteindre en PSI ou BAR) une batterie de 2000 mA et vous permettra de gonfler vos jouets (41 pièces avec une charge), pneus de vélo, de trotinette, de moto (6 pneus avec une charge) et même de voiture (5 pneus avec une charge) facilement.

Le câble est accompagné d'un embout pour valve Schrader et un adapteur Presta et une aiguille sont fournis. Le compresseur se recharge via une prise Micro USB.


> Voir l'offre

Sujets relatifs
Base de donnée, javascript,et un peu de culture
Créer une base de donnée MySQL
lire et afficher lien dans base de donnée
Afficher Lien dans enregistrement base de donnée
Problème avec mon code php et base de donnée
Mise à jour image base de donnée
Importer une base de donnée via phpMyAdmin
insertion dans une base de donnée
relié mon chat a joomla dans base de donnée
Classement dans un tableau (Base de donnée)
Plus de sujets relatifs à Base de donnée et php
 > Tous les forums > Forum Forum des Webmasters