Validation w3c

Signaler
Messages postés
6
Date d'inscription
lundi 3 octobre 2005
Statut
Membre
Dernière intervention
7 octobre 2007
-
Messages postés
6
Date d'inscription
lundi 3 octobre 2005
Statut
Membre
Dernière intervention
7 octobre 2007
-
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

Messages postés
6
Date d'inscription
lundi 3 octobre 2005
Statut
Membre
Dernière intervention
7 octobre 2007

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;
?>
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
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.
Messages postés
6
Date d'inscription
lundi 3 octobre 2005
Statut
Membre
Dernière intervention
7 octobre 2007

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
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
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.
Messages postés
6
Date d'inscription
lundi 3 octobre 2005
Statut
Membre
Dernière intervention
7 octobre 2007

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.