joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014
-
25 avril 2010 à 17:05
joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014
-
27 avril 2010 à 00:38
salut tt le monde ,j'ai un problème dans un bout de code.après avoir collecter les produits existants dans ma base,je veux limiter l'affichage à 4 produits par page puis afficher des liens automatiques en bas de pages.voici le code:
<?php
$link=mysql_connect("localhost","root","")or die("echec seveur");
$db=mysql_select_db('exact')or die("echec BD");
$requet=mysql_query("select * from articles where categorie='$cat'")or die("echec requete");
$nb=mysql_num_rows($requet);
if($nb==0)
{
echo "<center>Désolé, il n'y a pas des articles disponibles</center>";
}
else
{
$i=0;
while($tab=mysql_fetch_row($requet) AND $i<4)
{
$image=$tab[3];
$prix=$tab[1];
$des=$t=$tab[2];
echo '
';
echo '
<LABEL>',$prix,' DT TTC</LABEL>
<!--fiche de pc-->
',$des,'
',$carcat,'
';
?>
A voir également:
"Url de la page, sur votre site, où est affiché le lien vers"
inwebo
Messages postés380Date d'inscriptionlundi 12 novembre 2007StatutMembreDernière intervention23 octobre 2014 26 avril 2010 à 11:08
C'est au niveau de ta requête SQL que cela va se jouer. Regarde du côté de LIMIT.
Ensuite passe une variable en POST, GET, SESSION, qui indique la page Courante, et à partir de celle-ci il sera très facile de calculer le nombre de page la suivante, la précédente etc.
joujma5
Messages postés152Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention 5 décembre 2014 26 avril 2010 à 17:43
D'abord merci bien pour votre aide,en faite j'ai essayé un bout de code mais ça n'a pas marché,car par exemple en cherchant des portatif sur ma base,il m'affiche tous les enregistrements même ceux ne correspondant pas à ma recherche.voici le code:
1)la variable $nom prend le mot écrit dans un champ texte nommé "recherche".
<?php
$nom=$_GET['cherche'];
// connexion à la base
$db = mysql_connect("localhost", "root","") or die ('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db("exact",$db) or die ('Erreur de selection '.mysql_error());
/********************************** DEBUT PAGINATION *************************************/
// on va afficher 4 résultats par page, vous pouvez modifier ce chiffre selon votre souhait
$userperpage =4;
//Nombre indiquant le départ de la requete
$start = isset($_GET['start'])?$_GET['start']:0;
// Nom de la page
$page = basename(__FILE__);
// Compte les enregistrements
$select = "SELECT count(*) as total FROM articles where designation like '%$nom%' ";
// DEBUT > Protection des caractères spéciaux d'une commande SQL
// FIN > Protection des caractères spéciaux d'une commande SQL
$result = mysql_query($select,$db) or die ('Erreur : '. mysql_error());
$row = mysql_fetch_array($result);
$total2 = $row['total'];
/********************************** FIN PAGINATION *************************************/
if($total2 > 0) {
// requête SQL qui récupère tous les enregistrements
$select = "SELECT * FROM articles where designation like '%$nom%' LIMIT ".$start.",".$userperpage."";
$result = mysql_query($select,$db) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
// Nombres de colonnes max
$NB_COLS = 4;
$i = 0;
echo "\";
while($row = mysql_fetch_array($result))
{
if ($i == 0)
echo \"----
\";
echo '
/********************************** DEBUT PAGINATION N° *************************************/
// Génération des liens pour l'affichage des pages
echo '