Validation w3c

ratbone Messages postés 6 Date d'inscription lundi 3 octobre 2005 Statut Membre Dernière intervention 7 octobre 2007 - 5 oct. 2007 à 10:52
ratbone Messages postés 6 Date d'inscription lundi 3 octobre 2005 Statut Membre Dernière intervention 7 octobre 2007 - 7 oct. 2007 à 15:15
Bonjour tout le monde, je suis graphiste et j'ai un p'tit souci avec un code php de pagination pour un site que je fais pour un client. Vous pourrez voir le site en question à cette adresse http://newsite.commerce-a-vendre.fr/fr/ (qui est loin d'être fini mais je préfère épurer les pbm au fur et a mesure surtout quand on est pas codeur...) . Le moteur de recherche n'est pas terminé mais il fonctionne sur la 1ère liste, pour bien voir mon pbm choisissez commerces divers sur cette liste. Tout à l'air de fonctionner mais la page qui est validée xhtml par le w3c ne l'est plus à cause de mon code de pagination dont voici la source :
<?php
function pagine(
&$sql
,$mpp
,$query
,$url
,$long=10
) {
$res = mysql_query("SELECT count(*) ".$sql);
$nbres = mysql_result($res,0,0);
$nbpage = ceil($nbres/$mpp);
$p=@$_GET[$query]; if(!$p) $p=1;
$url= str_replace('?p='.$p,'',$url);
$url= str_replace('&p='.$p,'',$url);
$t = (strpos($url,"?"))?"&":"?";

if($p>$nbpage) $p = $nbpage;
$deb = max(1,$p-$long);
$fin = min($nbpage,$p+$long);


$pagine = "";
if($nbpage>1) {
for($i=$deb;$i<=$fin;$i++) {
if($i==$p) $pagine.=" ".$i." ";
elseif($i==1) $pagine.=" ".$i." ";
else $pagine.=" ".$i." ";
}
if($pagine) $pagine = " Page".$pagine;
if($pagine&&($p>1)) {
if($p==2) $pagine =" << ".$pagine;
else $pagine =" << ".$pagine;
if($p>2) $pagine =" |< ".$pagine;
}
if($pagine&&($p<$nbpage)) {
$pagine.=" >> ";
if($p<$nbpage-1) $pagine.=" >| ";
}

$sql .= " LIMIT ".(($p-1)*$mpp).",".$mpp;
}
return $pagine;
}
?>
//affichagedes numéros de page >
WHERE id_cat = %s ORDER BY nom_departement ASC", GetSQLValueString($colname_rproduits, "int"));
$pagine = pagine($rq,10,"p",$_SERVER['REQUEST_URI']);
$rproduits = mysql_query("SELECT * ".$rq);
$row_rproduits = mysql_fetch_assoc($rproduits);
echo $pagine;
?>
Je sais qu'une petite modif du code me permettra de valider ma page mais ma compréhension de ce langage reste très limitée et si je peux le manipuler je ne le développe pas. Merci d'avance à tout le monde pour vos réponses

5 réponses

ratbone Messages postés 6 Date d'inscription lundi 3 octobre 2005 Statut Membre Dernière intervention 7 octobre 2007
5 oct. 2007 à 10:56
oups! un bout du code n'a pas été envoyé sur l'affichage des numéros re-voic le code:
<?php $rq=sprintf("FROM produits WHERE id_cat = %s ORDER BY nom_departement ASC", GetSQLValueString($colname_rproduits, "int"));
$pagine = pagine($rq,10,"p",$_SERVER['REQUEST_URI']);
$rproduits = mysql_query("SELECT * ".$rq);
$row_rproduits = mysql_fetch_assoc($rproduits);
echo $pagine;
?>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
5 oct. 2007 à 19:57
Hello,

déjà, en xhtml, les balises sont en minuscules.
Si tu donnais plutôt les erreurs de validation que tu as ?  Et ce n'est pas le php qui te provoque ces erreurs, c'est le html que tu lui fais générer.
0
ratbone Messages postés 6 Date d'inscription lundi 3 octobre 2005 Statut Membre Dernière intervention 7 octobre 2007
5 oct. 2007 à 20:24
Salut Malalam et merci pour ta réponse, moi pourl'instant j'ai malalam-atière grise...;bref en fait j'ai corrigé une erreur de parse sur $t = (strpos($url,"?"))?"&":"?"; [j'ai modifié le & pour &] du coup je n'ai plus "que" 13 erreurs. Si tu veux voir ce qui ne passe pas vas sur le site http://newsite.commerce-a-vendre.fr/fr/ et selectionne "commerces divers" dans la 1ere liste (ne vas pas plus loin je suis en train de finir le moteur) puis tu vas en bas de la page et tu trouvera le lien sur le validateur w3c. Je sais que c'est le html généré qui provoque les erreurs car il n'y en a pas quand la pagination n'est pas activée (-de 10 réponses.Mais si j'ai trouvé le carractère qui me provoquait une partie des erreurs je ne capte pas l'autre. Merci encore à toi
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
5 oct. 2007 à 23:30
C'est bien ce que je te disais : remplace tes balises ... par ...
En xhtml, les balises DOIVENT être en minuscule, parce que XML est sensible à la casse. A est différent de a.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ratbone Messages postés 6 Date d'inscription lundi 3 octobre 2005 Statut Membre Dernière intervention 7 octobre 2007
7 oct. 2007 à 15:15
Yes c'était bien ça, bon ben merci encore y'a un nouveau souci quand on continue la selection sur les listes suivantes, ça ne valide pas mais j'ai vu que ça venait du & de l'adresse renvoyée par le code. Je vais corriger ça dès que je trouve la ligne qui construit le lien.
0
Rejoignez-nous