Bonjour alors voila proposant des telechargements sur mon site je souhiate faire un système de tri.(comme sur ce site http://www.gtapro.com/downloads/pafiledb.php) Là n'est pas le problème pour le moment.Je sais le faire avec une liste déroulante et un bouton.
Le problème vient du code qui ne s'affiche plus dans ma page index.php mais continue sur une page blanche en affichant le contenu sans le reste (menu, kit graphique)
voila donc lorsque je valide il va bien a la page dl.php mais seulement je ne parviens pas a faire en sorte que cette dl.php s'affiche dans la page index.php (dans le corps)
c'est normal; vu que tu lui demandes d'aller sur dl.php
Il faudrait que tu lui mettes index.php en action et que tu ajoutes un champ hidden du genre <input type="hidden" name="inclu" value="dl"> et dans ta page index.php, tu fais un traitement conditionnel:
Code :
<?
if ($_POST["inclu"] == "dl" ) {
include "dl.php";
} else {
... suite de ton index
}
?>
Bien sûr, ceci est à placer au bon endroit (là ou tu génères ton contenu).
CrazyCat a écrit :
c'est normal; vu que tu lui demandes d'aller sur dl.php
Il faudrait que tu lui mettes index.php en action et que tu ajoutes un champ hidden du genre <input type="hidden" name="inclu" value="dl"> et dans ta page index.php, tu fais un traitement conditionnel:
Code :
<?
if ($_POST["inclu"] == "dl" ) {
include "dl.php";
} else {
... suite de ton index
}
?>
Bien sûr, ceci est à placer au bon endroit (là ou tu génères ton contenu).
Ok je te remercie je vais essayer.
Si tu peut en même temps me dire comment faire si il y a plus de page qeu ce qui est afficher?
ex:
je classe pour n'afficher que 20données mais je veut pouvoir avoir en bas ou en haut de page la fonction précédent ou suivant ou alors comme les forum page1,2,3,...,56,57
CrazyCat a écrit :
Tu peux le faire avec 2 requètes (pour économiser de la mémoire):
Code :
SELECT COUNT(*) AS nbtotal FROM datas
-- Renvoit le nombre de lignes dans la table datas
SELECT * FROM datas LIMIT 0, 20 ORDER BY id DESC
-- Renvoit les 20 dernières datas
Et derrière, tu traites en faisant:
Code :
<? $pages = ceil($nptotal/20); ?>
Ca te renvoit le nombre total de pages (la dernière pouvant être incomplète.
D'accord mais pour avoir le numéros 1,2,3,4,5...,50
avec les liens pour accéder a la page contenant les 20 prochianes ligne je fais comment??
j'ai trouver ceci mais j'ai un problème il ne veut pas faire le mysqlclose il me met une erreur a la dernière ligne alors qu'elle n'existe pas (ex: j'ai 31 ligne de code et sur le net j'ai erreur ligne 32):
// --------------- Etape 1 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDetelechargements = 1; // Essayez de changer ce nombre pour voir )
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS id FROM telechargements" );
$donnees = mysql_fetch_array($retour);
$totalDestelechargements = $donnees['id'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDestelechargements / $nombreDetelechargements);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="telechargements.php?page=' . $i . '">' . $i . '</a> ';
}
// --------------- Etape 2 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDetelechargements;
$reponse = mysql_query('SELECT * FROM telechargements ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDetelechargements);
while ($donnees = mysql_fetch_array($reponse))
{
include('classe.php');
}
{
Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois. Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.