- 1
[Opened] UrlsHandler et db
Posted by julien j on 06/16/2008 15:54
Bonjour,
J'ai des problèmes pour mettre en place des url "signifiantes" sur mon site.
J'aimerais récupérer le nom de la page en fonction de l'id.
Tout fonctionne mais j'ai une erreur :
notice 1 : Trying to get property of non-object /home.10.16/julienj/chocolat/chocolat/modules/choco/classes/myhandler.urlhandler.php 34
la ligne c'est 34 : $titre = jUrl::escape($page->titre);
Même avec cette erreur mon URL est correct ($titre prend la bonne valeur)
Voila mon code :
<?php
class myhandlerUrlsHandler implements jIUrlSignificantHandler {
function parse($url){
if(preg_match("/^\/(.*)$/",$url->pathInfo,$match)){
$urlact = new jUrlAction($url->params);
$urlact->setParam('id',jUrl::unescape($match[1]));
return $urlact;
}else
return false;
}
function create($urlact, $url){
//id
$id = $url->getParam('id');
//Lang
$lang = $GLOBALS['gJConfig']->locale;
//On récupère le titre
$maFactory = jDao::get("admin~page");
$page = $maFactory->get($id);
$titre = jUrl::escape($page->titre);
$url->pathInfo = "/$id-$titre";
$url->delParam('id');
}
}
?>
Merci
Julien
[Opened] Re: UrlsHandler et db
Posted by laurentj on 06/16/2008 18:05
Salut,
Désolé, je ne vois pas là. Si php dit qu'il n'y a rien dans $page->titre mais qu'il y a quand même quelque chose (puisque $titre vaut quelque chose d'aprés toi), c'est plutôt bizarre...
Refait des essais en vidant le cache de ton navigateur, du contenu du temp etc...
- 1

