MarcoDroz
Messages postés4Date d'inscriptionmercredi 6 juin 2007StatutMembreDernière intervention17 avril 2008
-
17 avril 2008 à 00:58
nicomilville
Messages postés3472Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention28 février 2014
-
17 avril 2008 à 18:56
Bonsoir à tous, je connais mon problème mais ej ne sais pas comment le résoudre, c'est un problème de quotes voici mon code :
J'ai volontairement espacé l'avant dernière phrase pour montrer ou se situe l'erreur. Il interprète mal la virgule qui sépare les 2 paramètres, il ne rentre donc pas dans ma fonction javascript. Quelqu'un pourrait méclairer ? Merci d'avance.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 17 avril 2008 à 10:28
Bonjour,
on manque de trop de choses pour répndre de manire sûre...
comme on ne peut pas deviner le contenu des $variables
comme on n'a pas la function....
déjà, je dirais : $limit='2,2'; et si cela ne convient pas, met nous l'extrait nécessaire de
la page générée.... pas le PHP !
<hr /> Cordialement Bul [mon Site] [M'écrire]
MarcoDroz
Messages postés4Date d'inscriptionmercredi 6 juin 2007StatutMembreDernière intervention17 avril 2008 17 avril 2008 à 12:56
Ce n'est pas un nombre décimal, ce sont deux nombres séparés par une virgule : le premier indique l'endroit ou nous sommes des résultats, le second le nombre de résultats à afficher. Je voulais être clair en synthétisant le code, mais je vais devoir montrer un peu plus de choses.
J'ai une fonction qui génère la une limite qui serra concaténée à une reqûete sql passée en paramètre
function pagination($url,$parpage,$nblignes,$nbpages){
// On crée le code html pour la pagination
$html = precedent($url,$parpage,$nblignes); // On crée le lien precedent
// On vérifie que l'on a plus d'une page à afficher
if ($nbpages > 1) {
// On boucle sur les numéros de pages à afficher
for ($i = 0 ; $i < $nbpages ; ++$i) {
$limit = $i * $parpage; // On calcule le début de la valeur 'limit'
$limit = $limit.",".$parpage; // On fait une concaténation avec $parpage
// On affiche les liens des numéros de pages
$html .= "".($i + 1)." ";
}
}
// Si l'on a qu'une page on affiche rien
else {
$html .= "";
}
$html .= suivant($url,$parpage,$nblignes); // On crée le lien suivant
// On retourne le code html
return $html;
}
Tout fonctionne très bien la pagination aussi, mais je veux rajouter sur les liens < 1 2 3 > etc... du javascript pour ne rafraichir que le div ou les résultats sont affichés. j'ai donc créé
function pagination(url,limit) { blabla }
qui prendra l'url et la limite l'enverrons dans l'url, et seront récupéré dans un autre fichier php pour refaire la requête :
echo $_GET["limit"];
$sql="select * from mp3 where idUser=".$_GET["us"];
$parpage = 2; // Nombre d'enregistrements par page à afficher
$url = "reqUser.php?us=".$_GET["us"]."&limit=";
$total = mysql_query($sql); // Résultat total de la requête $sql
$nblignes = mysql_num_rows($total); // Nbre total d'enregistrements
// On calcule le nombre de pages à afficher en arrondissant
// le résultat au nombre supérieur grâce à la fonction ceil()
$nbpages = ceil($nblignes/$parpage);
// Si une valeur 'limit' est passée par url, on vérifie la validité de
// cette valeur par mesure de sécurité avec la fonction validlimit()
// cette fonction retourne automatiquement le résultat de la requête
$result = validlimit($nblignes,$parpage,$sql);
Or j'ai un problème de quotes, il n'appel pas la fonction js faute d'erreur de syntaxe
nicomilville
Messages postés3472Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention28 février 201436 17 avril 2008 à 18:56
bultez ++ car ce n'est plus une variable de type number ni double car il y a la virgule, si il y avait eu un point a la place de la virgule ça aurai été un double or la c'est un string ce qui necessite donc des quotes ou des double quotes !!!